@import "https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600;700;800&display=swap";:root{color:#0b2545;font-synthesis:none;--navy:#0b2545;--navy2:#123862;--amber:#ffb020;--surface:#fff;--muted:#64748b;--line:#dce3ea;--green:#14804a;background:#f5f7fa;font-family:Rubik,Arial,sans-serif}*{box-sizing:border-box}body{background:#edf1f5;min-width:360px;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #ffb02073}.login{background:#fff;grid-template-columns:1fr 1fr;min-height:100vh;display:grid;position:relative}.loginLanguage{z-index:3;position:absolute;inset-block-start:24px;inset-inline-end:24px}.languageSwitcher{border:1px solid var(--line);min-width:72px;height:42px;color:var(--navy);background:#fff;border-radius:22px;justify-content:center;align-items:center;gap:7px;font-weight:700;display:inline-flex}.languageSwitcher svg{width:18px;height:18px}.loginHero{background:var(--navy);color:#fff;flex-direction:column;justify-content:space-between;padding:56px 8vw;display:flex;position:relative;overflow:hidden}.logo{color:var(--navy);align-items:center;gap:10px;width:max-content;line-height:1;display:flex}.logoMark{background:var(--amber);width:46px;height:35px;color:var(--navy);clip-path:polygon(8% 0,92% 0,92% 15%,100% 15%,100% 85%,92% 85%,92% 100%,8% 100%,8% 85%,0 85%,0 15%,8% 15%);justify-content:space-around;align-items:center;font-size:19px;font-weight:800;display:flex}.logo b{letter-spacing:1px;font-size:23px}.logo small{margin-top:5px;font-size:10px;font-weight:500;display:block}.logo.light{color:#fff}.loginHero h1{margin:16px 0;font-size:clamp(42px,5vw,72px);line-height:1.05}.loginHero p{color:#b8c9da;font-size:18px}.eyebrow{color:var(--amber);font-weight:600}.heroPattern{border:60px solid #ffffff06;border-radius:50%;width:360px;height:360px;position:absolute;bottom:-100px;left:-100px}.loginPanel{place-items:center;padding:32px;display:grid}.loginBox{width:min(430px,100%)}.loginBox h2{margin:0 0 8px;font-size:34px}.loginBox>p{color:var(--muted);margin:0 0 34px}.mobileLogo{display:none}.login form{gap:10px;display:grid}.login label,.fieldLabel{font-size:14px;font-weight:600}.login input,.field input,.field select{border:1.5px solid var(--line);width:100%;height:56px;color:var(--navy);background:#fff;border-radius:10px;margin-top:8px;padding:0 16px;display:block}input::placeholder{color:#9aa7b6}.invalid,.hasError input,.hasError select{border-color:#c73737!important}.error{color:#b42318;margin-top:5px;font-size:12px;display:block}.loginError,.saveError{text-align:center}.sessionLoading{background:var(--paper);place-items:center;min-height:100vh;display:grid}.btn{border:0;border-radius:10px;justify-content:center;align-items:center;gap:10px;min-height:56px;padding:0 24px;font-size:16px;font-weight:700;display:flex}.btn.primary{background:var(--amber);color:var(--navy)}.login .btn{margin-top:18px}.btn.secondary{color:var(--navy);border:1.5px solid var(--line);background:#fff}.btn:disabled{opacity:.7}.support{text-align:center;border-top:1px solid var(--line);color:var(--muted);margin-top:35px;padding-top:24px;font-size:14px}.support a{color:var(--navy);font-weight:600}.app{min-height:100vh;padding-bottom:95px}.app header{background:var(--navy);color:#fff;grid-template-columns:1fr auto 1fr;align-items:center;height:74px;padding:0 max(24px,50% - 520px);display:grid}.headerActions{justify-self:start;align-items:center;gap:8px;display:flex}.app header>.iconBtn{justify-self:end}.languageSwitcher.compact{color:#fff;background:0 0;border-color:#ffffff59;min-width:58px;height:38px}.iconBtn{color:#fff;background:0 0;border:0;border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.profile{background:#25496d}.content{max-width:1040px;margin:0 auto;padding:36px 24px}.welcome span{color:var(--muted);font-size:13px}.welcome h1{margin:5px 0;font-size:30px}.welcome p{color:var(--muted);margin:0}.ctaCard{color:#fff;text-align:start;background:linear-gradient(105deg,#0b2545,#123b68);border:0;border-radius:16px;align-items:center;gap:22px;width:100%;min-height:130px;margin:30px 0 22px;padding:26px 30px;display:flex;box-shadow:0 10px 24px #0b254526}.ctaCard .ctaIcon{background:var(--amber);width:70px;height:70px;color:var(--navy);border-radius:15px;place-items:center;display:grid}.ctaIcon svg{width:36px;height:36px}.ctaCard>span:nth-child(2){flex:1}.ctaCard b{font-size:24px;display:block}.ctaCard small{color:#c6d4e1;margin-top:7px;font-size:14px;display:block}.ctaCard>svg{transform:rotate(180deg)}.stats{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.stats article{background:#fff;border:1px solid #e7ebef;border-radius:13px;gap:3px;padding:20px;display:grid}.stats strong{font-size:30px}.stats span{font-weight:600}.stats small{color:var(--muted);font-size:11px}.stats article:first-child small{color:var(--green)}.sectionTitle{justify-content:space-between;align-items:center;margin:34px 0 13px;display:flex}.sectionTitle h2{font-size:19px}.sectionTitle button{color:var(--navy);background:0 0;border:0;align-items:center;gap:4px;font-weight:600;display:flex}.sectionTitle svg{width:16px;transform:rotate(180deg)}.record{background:#fff;border:1px solid #e4e9ee;border-radius:12px;align-items:center;gap:14px;min-height:88px;margin-bottom:10px;padding:17px;display:flex}.batteryIcon{background:#e7edf3;border-radius:9px;place-items:center;width:48px;height:48px;font-weight:800;display:grid}.batteryIcon span{background:var(--navy);color:#fff;border-radius:4px;padding:1px 7px}.record>div:nth-child(2){flex:1;gap:2px;display:grid}.record small{color:var(--muted);font-size:11px}.record b{text-align:start;font-size:15px}.record div>span{color:#526172;font-size:13px}.recordEnd{text-align:end;justify-items:end;gap:8px;display:grid}.pill{border-radius:20px;padding:5px 9px;font-weight:600;color:#107140!important;background:#dcf5e7!important;font-size:11px!important}.pill.pending{color:#8b5a00!important;background:#fff0ce!important}.app nav{z-index:10;border-top:1px solid var(--line);background:#fff;justify-content:center;gap:120px;height:78px;display:flex;position:fixed;bottom:0;left:0;right:0}.app nav button{color:#7a8998;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:80px;font-size:11px;display:flex}.app nav button.active{color:var(--navy);font-weight:600}.app nav .newNav{color:var(--navy);position:relative}.newNav span{background:var(--amber);border:5px solid #edf1f5;border-radius:50%;place-items:center;width:58px;height:58px;display:grid;position:absolute;top:-26px}.newNav em{margin-top:28px;font-style:normal;font-weight:600}.formPage{max-width:760px;margin:auto}.pageHead{align-items:center;gap:16px;margin-bottom:18px;display:flex}.pageHead h1{margin:0;font-size:26px}.pageHead p{color:var(--muted);margin:6px 0 0}.back{border:1px solid var(--line);background:#fff;border-radius:10px;place-items:center;width:48px;height:48px;display:grid}.progress{gap:6px;margin:22px 0;display:flex}.progress span{background:var(--amber);border-radius:5px;flex:1;height:4px}.progress span:last-child{background:#d9e0e6}.formSection{background:#fff;border:1px solid #e1e7ec;border-radius:14px;margin-bottom:14px;padding:24px}.formSection h2{align-items:center;gap:10px;margin:0 0 22px;font-size:18px;display:flex}.formSection h2 span{background:var(--navy);color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;font-size:13px;display:grid}.field{margin-bottom:19px}.field:last-child{margin-bottom:0}.fieldLabel i{color:#c73737;margin-inline-start:3px;font-style:normal}.inputWith,.selectWrap{align-items:center;display:flex;position:relative}.inputWith button{background:var(--navy);color:#fff;border:0;border-radius:8px;place-items:center;width:48px;height:48px;display:grid;position:absolute;inset-inline-end:5px}.inputWith>svg{color:#718196;position:absolute;inset-inline-end:17px}.inputWith input{padding-inline-end:60px}.inputWith input[dir=ltr]{padding-inline:60px}.scannerOpen{overflow:hidden}.scannerBackdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#020d1bd1;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.scannerDialog{background:var(--surface);border-radius:18px;width:min(520px,100%);overflow:hidden;box-shadow:0 24px 70px #00000061}.scannerLoading{min-width:220px;min-height:100px;color:var(--navy);background:#fff;border-radius:14px;justify-content:center;align-items:center;gap:10px;font-weight:600;display:flex}.scannerHeader{justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.scannerHeader h2{margin:0;font-size:20px}.scannerHeader p{color:var(--muted);margin:5px 0 0;font-size:13px}.scannerHeader button,.scannerFooter button{border:0;border-radius:10px;min-width:48px;min-height:48px}.scannerHeader button{color:var(--navy);background:#e9eef3;place-items:center;display:grid}.scannerViewport{aspect-ratio:4/3;background:#020b15;position:relative;overflow:hidden}.scannerViewport video{object-fit:cover;width:100%;height:100%}.scanFrame{border:3px solid var(--amber);border-radius:12px;width:78%;height:42%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 999px #00000061}.scanFrame span{background:var(--amber);height:2px;box-shadow:0 0 10px var(--amber);animation:1.8s ease-in-out infinite scanLine;position:absolute;top:50%;left:8px;right:8px}@keyframes scanLine{0%,to{transform:translateY(-55px)}50%{transform:translateY(55px)}}.scannerError{color:#fff;text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:28px;display:flex}.scannerError svg{width:46px;height:46px;color:var(--amber);margin-bottom:14px}.scannerError p{color:#c6d4e1;max-width:360px;margin:8px 0 0;line-height:1.5}.scannerFooter{align-items:center;gap:12px;padding:16px 20px;display:flex}.scannerFooter>svg{color:var(--amber);flex:none}.scannerFooter span{flex:1;font-size:13px;font-weight:600}.scannerFooter small{color:var(--muted);margin-top:3px;font-weight:400;display:block}.scannerFooter button{background:var(--navy);color:#fff;padding:0 18px;font-weight:600}.selectWrap svg{pointer-events:none;position:absolute;inset-inline-end:16px}.field select{appearance:none}.segments{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.segments button{border:1.5px solid var(--line);height:66px;color:var(--navy);background:#fff;border-radius:9px}.segments button.active{border-color:var(--amber);box-shadow:inset 0 0 0 1px var(--amber);background:#fff5df}.segments b,.segments small{display:block}.segments b{font-size:20px}.segments small{color:var(--muted)}.calculated{border-inline-start:4px solid var(--amber);background:#fff6e4;border-radius:7px;justify-content:space-between;align-items:center;padding:17px;display:flex}.calculated small,.calculated strong{display:block}.calculated small{color:#725314;font-size:12px}.calculated strong{margin-top:4px;font-size:22px}.calculated svg{color:#ae7100}.twoCols{grid-template-columns:1fr 1fr;gap:12px;display:grid}.stickySave{z-index:5;background:#f5f7faf2;padding:12px 0;position:sticky;bottom:90px}.stickySave .btn{width:100%}.spinner{border:3px solid #0b254540;border-top-color:var(--navy);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.confirm{text-align:center;max-width:540px;min-height:100vh;margin:auto;padding:60px 24px}.checkCircle{width:80px;height:80px;color:var(--green);background:#dff5e9;border-radius:50%;place-items:center;margin:auto;display:grid}.checkCircle svg{width:42px;height:42px}.confirm h1{margin:22px 0 8px;font-size:28px}.confirm>p{color:var(--muted);margin:0 0 28px}.confirm section{border:1px solid var(--line);text-align:start;background:#fff;border-radius:14px;margin-bottom:18px;overflow:hidden}.summaryTop{align-items:center;gap:12px;padding:18px;display:flex}.summaryTop>div:nth-child(2){flex:1;display:grid}.summaryTop small,dt{color:var(--muted);font-size:12px}.confirm dl{margin:0}.confirm dl>div{border-top:1px solid #edf0f3;justify-content:space-between;padding:14px 18px;display:flex}.confirm dd{margin:0;font-weight:600}.confirm .amberRow{background:#fff6e4}.confirm .amberRow dd{color:#9a6200}.confirm>.btn{width:100%;margin-top:10px}.pageHead.simple{margin-bottom:24px}.search{border:1.5px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:10px;height:58px;padding:0 16px;display:flex}.search input{text-align:start;border:0;outline:0;flex:1;height:100%}.search button{background:0 0;border:0;width:48px;height:48px;font-size:24px}.historyCount{color:var(--muted);margin:18px 2px 10px;font-size:13px}.empty{text-align:center;color:var(--muted);background:#fff;border:1px dashed #cbd4dd;border-radius:14px;padding:58px 20px}.empty svg{width:42px;height:42px}.empty h2{color:var(--navy);font-size:18px}.loadingList{gap:10px;display:grid}.loadingList div{background:linear-gradient(90deg,#e8edf2 25%,#f5f7f9 50%,#e8edf2 75%) 0 0/200% 100%;border-radius:12px;height:88px;animation:1.2s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}@media (width<=700px){.login{background:#fff;display:block}.loginHero{display:none}.loginPanel{align-items:start;min-height:100vh;padding:34px 24px}.mobileLogo{width:max-content;margin:10px auto 58px;display:block}.loginBox h2{font-size:29px}.content{padding:26px 16px}.app header{height:66px;padding:0 16px}.app header .logoMark{width:39px;height:30px}.app header .logo b{font-size:19px}.app header .logo small{display:none}.welcome h1{font-size:26px}.ctaCard{gap:14px;min-height:150px;padding:22px 18px}.ctaCard .ctaIcon{flex:none;width:58px;height:58px}.ctaCard b{font-size:20px}.ctaCard>svg{display:none}.stats{gap:7px}.stats article{min-height:112px;padding:14px 10px}.stats strong{font-size:27px}.stats span{font-size:13px}.stats small{font-size:9px}.app nav{gap:30px}.formSection{padding:20px 16px}.twoCols{grid-template-columns:1fr}.pageHead h1{font-size:22px}.segments button{height:64px}.record{padding:13px 11px}.batteryIcon{width:44px;height:44px}.record b{font-size:13px}.confirm{padding-top:42px}.stickySave{bottom:76px}.scannerBackdrop{align-items:end;padding:0}.scannerDialog{border-radius:18px 18px 0 0;width:100%}.scannerViewport{aspect-ratio:1;max-height:58vh}}@media (width<=390px){.headerActions .profile{display:none}.ctaCard small{font-size:12px}.stats small{display:none}.stats article{min-height:90px}.record .batteryIcon{display:none}.app nav{gap:10px}.content{padding-inline:14px}.formSection{padding-inline:13px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}.photoUpload{cursor:pointer;border:1px dashed #b7c4d4;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;padding:14px;display:flex;position:relative}.photoUpload input{opacity:0;width:1px;height:1px;padding:0;position:absolute}.photoUpload:focus-within{outline:2px solid #174f84}.photoPreview{object-fit:contain;border-radius:10px;width:100%;max-height:280px;display:block}.photoLink{color:#174f84;cursor:pointer;background:0 0;border:0;padding:4px 0;text-decoration:underline;display:block}.photoModal{color:#fff;z-index:100;background:#000000e6;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex;position:fixed;inset:0}.photoModal img{object-fit:contain;max-width:100%;max-height:80vh}.photoModal button,.adminFilters button,.exportButton,.usersForm button,.adminTabs button{cursor:pointer;color:#102c4a;background:#fff;border:1px solid #bac7d6;border-radius:10px;padding:12px 20px}.adminApp .content{max-width:1440px;padding-inline:20px}.adminTabs{gap:8px;margin-bottom:16px;display:flex}.adminTabs button.active{color:#fff;background:#0b2545}.adminFilters{grid-template-columns:repeat(4,minmax(170px,1fr));align-items:end;gap:12px;display:grid}.adminFilters label,.usersForm label{gap:6px;display:grid}.adminFilters input,.adminFilters select,.usersForm input,.usersForm select{width:100%;font:inherit;border:1px solid #bac7d6;border-radius:8px;min-width:0;padding:10px}.usersForm{grid-template-columns:repeat(4,minmax(180px,1fr));align-items:end;gap:12px;display:grid}.usersAdminToggle{align-items:center;gap:10px;height:42px;display:flex!important}.usersAdminToggle input{width:18px;height:18px}.exportButton{margin-block:12px}.adminTable{background:#fff;border:1px solid #dbe3ec;border-radius:12px;overflow:hidden}.adminTable table{border-collapse:collapse;text-align:start;table-layout:fixed;width:100%;font-size:13px}.adminTable th,.adminTable td{text-align:start;white-space:normal;overflow-wrap:anywhere;border-bottom:1px solid #e0e5eb;padding:10px}.adminTable th{background:#e7edf4}@media (width<=980px){.adminFilters,.usersForm{grid-template-columns:repeat(2,minmax(150px,1fr))}}@media (width<=680px){.adminFilters,.usersForm{grid-template-columns:1fr}.adminTable table,.adminTable thead,.adminTable tbody,.adminTable tr,.adminTable th,.adminTable td{width:100%;display:block}.adminTable thead{display:none}.adminTable tr{border-bottom:1px solid #e0e5eb;padding:10px}.adminTable td{border:0;padding:6px 0}}.batterySpecifications{background:#f1f5fa;border-radius:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-block:16px;padding:16px;display:grid}.batterySpecifications div{min-width:0}.batterySpecifications dt{color:#60758c;font-size:13px}.batterySpecifications dd{overflow-wrap:anywhere;margin:4px 0 0}
