:root{color-scheme:dark;--bg: #05070d;--panel: rgba(9, 14, 26, .84);--panel-elevated: rgba(13, 20, 36, .92);--border: rgba(56, 189, 248, .2);--text: #f8fbff;--muted: #a8b3c7;--subtle: #6f7b91;--primary: #00a3ff;--primary-hover: #35c8ff;--primary-soft: rgba(0, 163, 255, .14);--primary-border: rgba(0, 194, 255, .38);--accent: #38f8ff;--danger: #ef4444;--danger-hover: #dc2626;--shadow: 0 24px 70px rgba(0, 8, 28, .52);--glow: 0 0 0 1px rgba(0, 194, 255, .16), 0 18px 45px rgba(0, 132, 255, .16);--radius: 14px;--radius-sm: 10px;--content-width: 980px;--gap: 22px;--input-height: 44px}*{box-sizing:border-box}html,body,#root{min-height:100%}html{overflow-x:hidden}body{margin:0;background:radial-gradient(circle at 18% 0%,rgba(0,163,255,.24),transparent 28%),radial-gradient(circle at 88% 12%,rgba(56,248,255,.14),transparent 24%),linear-gradient(180deg,#080d19f5,#04060cfa),var(--bg);background-attachment:fixed;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;overflow-x:hidden}button,input,textarea,select{font:inherit;font-size:16px}a{color:inherit}img{max-width:100%;display:block}.app-shell{min-height:100vh}.app-shell__main{width:100%;max-width:var(--content-width);margin:0 auto;padding:24px max(24px,env(safe-area-inset-right)) 24px max(24px,env(safe-area-inset-left))}.app-layout{width:100%}.auth-page{min-height:100vh;display:grid;place-items:center;padding:30px 24px 40px}.auth-card{width:min(440px,100%);display:grid;gap:26px;padding:28px}.auth-card__header{display:grid;gap:8px}.app-nav{width:100%;max-width:var(--content-width);margin:16px auto 0;padding:0 24px 24px;display:flex;gap:12px;flex-wrap:wrap;justify-content:center;animation:fade-in .18s ease-out}.nav-item{padding:10px 16px;border-radius:var(--radius-sm);background:#080d189e;border:1px solid rgba(56,189,248,.18);color:#d7e3f5;cursor:pointer;transition:.2s;text-decoration:none;scroll-snap-align:start}.nav-item:hover{background:#00a3ff1f;border-color:var(--primary-border)}.nav-item.active{background:linear-gradient(135deg,var(--primary),var(--accent));color:#001522;border-color:transparent;box-shadow:var(--glow)}.page-frame{display:flex;flex-direction:column;gap:var(--gap);animation:fade-in .18s ease-out}.home-page{gap:28px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.page-header__eyebrow{margin:0 0 6px;color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.page-header__title{margin:0;font-size:clamp(1.65rem,2vw,2.2rem);line-height:1.06;letter-spacing:0}.page-header__subtitle{margin:8px 0 0;color:var(--muted);max-width:62ch}.section-card,.card,.page-card{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 42%),var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:hidden}.section-card:before,.card:before,.page-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:inherit;background:linear-gradient(135deg,rgba(56,248,255,.14),transparent 34%);opacity:.32}.card,.page-card,.section-card{padding:22px}.card--elevated{background:linear-gradient(180deg,rgba(0,163,255,.08),transparent 34%),var(--panel-elevated);box-shadow:var(--shadow),var(--glow)}.page-stack{display:flex;flex-direction:column;gap:var(--gap)}.section-grid{display:grid;gap:var(--gap)}.section-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.section-title{margin:0;color:#eef8ff;font-size:1.12rem;line-height:1.18;font-weight:760;letter-spacing:0}.section-description{margin:8px 0 0;color:var(--muted);line-height:1.55}.notice{margin:0;padding:12px 14px;border-radius:14px;border:1px solid var(--border)}.notice--success{background:#00a3ff1f;color:#b9ecff}.notice--error{background:#ef44441f;color:#fecaca}.helper{margin:0;color:var(--muted);font-size:.93rem;line-height:1.5}.text-subtle{color:var(--subtle)}.text-muted{color:var(--muted)}.text-danger{color:var(--danger)}.input-field{display:flex;flex-direction:column;gap:9px}.input-field__label{color:var(--text);font-size:.92rem;font-weight:800}.input-field__help,.input-field__error{font-size:.85rem}.input-field__help{color:var(--subtle)}.input-field__error{color:#fca5a5}.input,.select,.textarea{width:100%;min-height:var(--input-height);border-radius:var(--radius-sm);border:1px solid rgba(56,189,248,.18);background:#040912c7;color:var(--text);padding:12px 15px;outline:none;transition:border-color .14s ease,transform .14s ease,background-color .14s ease,box-shadow .14s ease}.textarea{min-height:120px;resize:vertical}.input:focus,.select:focus,.textarea:focus{border-color:#38f8ffb8;box-shadow:0 0 0 3px #00a3ff29,0 0 24px #00a3ff1f}.input--error{border-color:#ef444499}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--input-height);padding:0 18px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text);cursor:pointer;text-decoration:none;font-size:.94rem;font-weight:700;letter-spacing:0;transition:transform .14s ease,background-color .14s ease,border-color .14s ease,box-shadow .14s ease,opacity .14s ease}.button:disabled{opacity:.55;cursor:not-allowed}.button:active{transform:scale(.98)}.button--primary{background:linear-gradient(135deg,var(--primary),var(--accent));color:#001522;font-weight:700;box-shadow:0 12px 30px #00a3ff4d}.button--primary:hover{background:linear-gradient(135deg,var(--primary-hover),#78fbff);box-shadow:0 16px 36px #00c2ff61}.button--secondary{background:#070d19db;border-color:#38bdf838;color:#dbeafe}.button--secondary:hover{background:#00a3ff1f;border-color:var(--primary-border);box-shadow:0 0 24px #00a3ff1f}.button--ghost{border-color:transparent;background:transparent;color:var(--muted)}.button--ghost:hover{background:#00a3ff1a;color:var(--text)}.button--danger{background:linear-gradient(135deg,#ef4444,#fb7185);border-color:#f8717166;color:#fff;box-shadow:0 12px 28px #ef444438}.button--danger:hover{background:linear-gradient(135deg,var(--danger-hover),#f43f5e);box-shadow:0 16px 34px #ef444452}.app-header{border-bottom:1px solid rgba(56,189,248,.14);background:#05080fc2;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);box-shadow:0 18px 44px #00081c3d}.app-header__content{max-width:var(--content-width);margin:0 auto;padding:28px 24px 24px;display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.app-header__eyebrow{margin:0 0 8px;color:var(--accent);font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.app-header__title{margin:0;font-size:clamp(1.85rem,2.8vw,2.7rem);line-height:1.02;font-weight:780;letter-spacing:0;text-shadow:0 0 24px rgba(0,163,255,.26)}.app-header__subtitle{margin:10px 0 0;color:var(--muted);max-width:62ch;font-size:1rem;line-height:1.55}.app-header__back{flex:0 0 auto}.app-header__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}.app-header__logout{min-width:112px}.frota-grid,.product-grid,.results-grid,.history-list,.critical-list,.photo-grid{display:grid;gap:var(--gap)}.frota-card{display:flex;flex-direction:column;gap:16px;border-color:#38bdf829;transition:transform .14s ease,border-color .14s ease,background-color .14s ease,box-shadow .14s ease}.frota-card:hover{transform:translateY(-1px);border-color:var(--primary-border);box-shadow:var(--glow)}.frota-card__top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.frota-card__label,.card-label{margin:0 0 7px;color:var(--muted);font-size:.74rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.frota-card__title{margin:0;color:#f3fbff;font-size:1.22rem;line-height:1.16;font-weight:760}.frota-card__meta,.frota-card__line,.frota-card__detail,.card-description{margin:0;color:var(--muted);line-height:1.55}.frota-card__actions,.inline-actions,.detail-actions,.home-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px}.home-actions .button{min-width:190px}.status{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;border:1px solid rgba(56,189,248,.18);color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.03em}.status--success{color:#b9ecff;border-color:#00a3ff57;background:#00a3ff1a}.status--danger{color:#fca5a5;border-color:#ef44444d;background:#ef444414}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#020612c7;display:flex;align-items:center;justify-content:center;padding:22px}.modal{width:min(760px,100%);background:var(--panel-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.modal__header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:18px}.modal__title{margin:0;font-size:1.2rem;line-height:1.18}.search-card{display:flex;flex-direction:column;gap:18px;max-width:900px;margin:0 auto;width:100%}.search-bar{display:grid;gap:12px}.field-grid,.form-grid{display:grid;gap:16px}.form-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.item-divider{height:1px;background:#38bdf824;margin:12px 0}.photo-upload__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.photo-upload__item{margin:0;border-radius:14px;overflow:hidden;border:1px solid rgba(56,189,248,.16);background:#040912b8}.photo-upload__item img{width:100%;aspect-ratio:1 / 1;object-fit:cover}.photo-upload__item figcaption{padding:8px 10px;font-size:.82rem;color:var(--muted)}.summary-list,.history-meta,.detail-meta{display:grid;gap:10px}.summary-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.critical-item,.history-item,.summary-box{border:1px solid rgba(56,189,248,.14);border-radius:var(--radius);background:linear-gradient(180deg,rgba(0,163,255,.055),transparent 38%),#050a14ad;padding:18px;box-shadow:0 10px 26px #00081c38}.history-item{display:flex;flex-direction:column;gap:14px}.history-item__top,.summary-box__top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.critical-item{display:grid;gap:8px}.fade-in{animation:fade-in .18s ease-out}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.quality-section{display:flex;flex-direction:column;gap:20px}.quality-section__head{max-width:900px;width:100%;margin:0 auto}.quality-card{width:100%;max-width:900px;margin:0 auto;padding:26px;border-color:#38f8ff38}.quality-toolbar{display:flex;flex-wrap:wrap;justify-content:center;align-items:end;gap:16px}.quality-select{min-width:220px;flex:1 1 220px;max-width:300px}.quality-custom-dates{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:16px}.quality-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:10px}.quality-kpi{border:1px solid rgba(56,189,248,.14);border-radius:var(--radius);background:linear-gradient(180deg,#00a3ff14,#050a14b3);padding:18px;text-align:center;display:grid;gap:8px;box-shadow:inset 0 1px #ffffff09}.quality-kpi span{color:var(--muted);font-size:.86rem;font-weight:650}.quality-kpi strong{font-size:1.75rem;line-height:1;color:#e8fbff}.quality-layout{display:grid;gap:24px;justify-items:center;margin-top:10px}.quality-chart-panel{width:100%;display:grid;justify-items:center;gap:18px}.quality-donut{position:relative;display:grid;place-items:center;max-width:100%}.quality-donut svg{width:min(220px,100%);height:auto}.quality-donut__center{position:absolute;display:grid;place-items:center;gap:4px;text-align:center}.quality-donut__center strong{font-size:1.6rem;line-height:1}.quality-legend{width:100%;max-width:680px;display:grid;gap:10px}.quality-legend__item{display:grid;grid-template-columns:14px 1fr auto;gap:10px;align-items:center}.quality-ranking{width:100%;max-width:680px;display:grid;gap:12px}.quality-ranking__list{display:grid;gap:10px}.quality-ranking__item{display:grid;grid-template-columns:32px 1fr;gap:12px;align-items:start;padding:16px;border:1px solid rgba(56,189,248,.14);border-radius:var(--radius);background:#050a149e}.quality-ranking__position{width:32px;height:32px;border-radius:999px;display:inline-grid;place-items:center;background:var(--primary-soft);color:#b9ecff;font-weight:700}.quality-card .helper{text-align:center}@media(max-width:768px){:root{--gap: 16px;--radius: 12px;--input-height: 46px}.app-shell__main{padding:16px max(14px,env(safe-area-inset-right)) 28px max(14px,env(safe-area-inset-left))}.app-nav{justify-content:flex-start;padding:0 14px 18px;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}.nav-item{white-space:nowrap}.app-header__content{padding:22px 14px 18px;flex-direction:column;gap:18px}.app-header__text,.app-header__actions{width:100%}.app-header__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.page-header{flex-direction:column}.app-header__title{font-size:clamp(1.7rem,9vw,2.2rem)}.app-header__subtitle{font-size:.96rem}.card,.page-card,.section-card{padding:16px}.auth-card{padding:22px 18px}.form-grid--two,.form-grid--three,.quality-kpis,.quality-custom-dates{grid-template-columns:1fr}.frota-card__top,.history-item__top,.summary-row,.summary-box__top{flex-direction:column}.frota-card__actions,.inline-actions,.detail-actions,.home-actions{width:100%}.home-actions{flex-direction:column;align-items:stretch}.home-actions .button{min-width:0}.quality-toolbar{flex-direction:column;align-items:stretch}.quality-select{min-width:0;max-width:none;width:100%}.quality-card{padding:16px}.quality-kpi{padding:15px}.quality-kpi strong{font-size:1.45rem;overflow-wrap:anywhere}.quality-legend__item{grid-template-columns:12px minmax(0,1fr)}.quality-legend__item strong{grid-column:2;color:var(--muted)}.quality-ranking__item{padding:14px}.modal-overlay{align-items:flex-end;padding:12px}.modal{max-height:calc(100vh - 24px);overflow:auto;padding:16px}.button{width:100%}}@media(max-width:420px){.app-header__actions{grid-template-columns:1fr}.app-nav{margin-top:10px}.section-head{flex-direction:column}.photo-upload__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
