:root{--bg:#fbf1dc;--panel:#f3e4be;--panel-deep:#ead9ac;--ink:#2b1b12;--ink-soft:#5a4531;--maroon:#7a1220;--maroon-deep:#591019;--gold:#b8860b;--gold-light:#f6d77a;--green:#1f3d2b;--serif:"Rozha One",serif;--sans:"Mukta",sans-serif}*{box-sizing:border-box}body,html{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans)}.wrap{max-width:900px;margin:0 auto;padding:0 24px}h1,h2,h3{font-family:var(--serif);font-weight:400;color:var(--maroon-deep)}a{color:inherit}.header{justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--panel-deep)}.header,.wordmark{display:flex;align-items:center}.wordmark{font-family:var(--serif);font-size:1.6rem;color:var(--maroon-deep);text-decoration:none;gap:8px}.header-right{display:flex;align-items:center;gap:16px}.lang-toggle{display:flex;border-radius:999px;background:var(--panel);padding:3px;border:1px solid var(--panel-deep)}.lang-toggle button{border:none;background:transparent;padding:6px 14px;border-radius:999px;font-family:var(--sans);font-weight:600;font-size:.85rem;cursor:pointer;color:var(--ink-soft)}.btn-primary,.lang-toggle button.active{background:var(--maroon);color:var(--bg)}.btn-primary{font-family:var(--sans);font-weight:700;font-size:1.02rem;padding:16px 30px;border-radius:4px;border:none;cursor:pointer;text-decoration:none;display:inline-block}.btn-primary:hover{background:var(--maroon-deep)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px;margin:28px 0}@media (max-width:720px){.steps{grid-template-columns:1fr}}.step-card{background:var(--panel);border:1px solid var(--panel-deep);border-radius:6px;padding:22px}.step-num{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--maroon);color:var(--bg);font-weight:700;margin-bottom:10px}.upload-box{border:2px dashed var(--gold);border-radius:8px;padding:40px;text-align:center;background:var(--panel);margin:24px 0}.form-field{margin-bottom:16px}.form-field label{display:block;font-weight:600;margin-bottom:6px;font-size:.95rem}.form-field input[type=date],.form-field input[type=text],.form-field select{width:100%;padding:10px 12px;border:1px solid var(--panel-deep);border-radius:4px;font-family:var(--sans);font-size:1rem;background:#fff}.time-row{display:flex;gap:10px}.time-row select{flex:1 1}.report-box{background:var(--panel);border:1px solid var(--panel-deep);border-radius:6px;padding:28px;margin-top:24px;white-space:pre-wrap;line-height:1.7}@keyframes fadeInUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulseBorder{0%,to{border-color:var(--gold)}50%{border-color:var(--gold-light)}}@keyframes checkPop{0%{transform:scale(0);opacity:0}60%{transform:scale(1.15);opacity:1}to{transform:scale(1)}}@keyframes scanSweep{0%{top:0;opacity:.9}50%{opacity:1}to{top:100%;opacity:.9}}@keyframes scanGlowPulse{0%,to{box-shadow:0 0 0 rgba(184,134,11,.25)}50%{box-shadow:0 0 24px rgba(184,134,11,.45)}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.fade-up{animation:fadeInUp .5s ease both}.fade-in{animation:fadeIn .4s ease both}.stagger-1{animation-delay:.05s}.stagger-2{animation-delay:.15s}.stagger-3{animation-delay:.25s}.stagger-4{animation-delay:.35s}.btn-primary{transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px -6px rgba(122,18,32,.4)}.btn-primary:active:not(:disabled){transform:translateY(0)}.step-card{transition:transform .2s ease,box-shadow .2s ease}.step-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px -12px rgba(43,27,18,.25)}.upload-box{animation:pulseBorder 2.4s ease-in-out infinite;transition:background .2s ease}.upload-box:hover{background:var(--panel-deep)}.spinner{width:22px;height:22px;border:3px solid var(--panel-deep);border-top-color:var(--maroon);border-radius:50%;animation:spin .7s linear infinite;display:inline-block;vertical-align:middle;margin-right:10px}.loading-row{display:flex;align-items:center;padding:16px 0}.check-pop{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--green);color:#fff;font-size:1.1rem;animation:checkPop .4s ease both;margin-right:10px}.scan-frame{position:relative;max-width:360px;margin:0 auto 24px;border-radius:8px;overflow:hidden;border:2px solid var(--gold);animation:scanGlowPulse 1.8s ease-in-out infinite}.scan-frame img{display:block;width:100%;height:auto;filter:saturate(.9) contrast(1.05)}.scan-line{position:absolute;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--gold-light) 20%,var(--gold-light) 80%,transparent);box-shadow:0 0 12px 2px hsla(45,87%,72%,.7);animation:scanSweep 1.8s ease-in-out infinite}.scan-grid-overlay{position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgba(184,134,11,.15),rgba(184,134,11,.15) 1px,transparent 0,transparent 24px),repeating-linear-gradient(90deg,rgba(184,134,11,.15),rgba(184,134,11,.15) 1px,transparent 0,transparent 24px);pointer-events:none}.scan-caption{text-align:center;color:var(--ink-soft);font-size:.9rem;margin-top:-8px}.honesty-note{background:var(--green);color:#efe6c8;padding:24px;border-radius:6px;font-size:.92rem;line-height:1.6;margin:32px 0}.error-text{color:var(--maroon);font-size:.92rem;margin-top:8px}.icon-mark{width:32px;height:32px}footer{border-top:1px solid var(--panel-deep);padding:24px 0;margin-top:40px;font-size:.85rem;color:var(--ink-soft);display:flex;justify-content:space-between;align-items:center}