:root{--font-size-caption:12px;--font-size-meta:13px;--font-size-body:14px;--font-size-control:14px;--font-size-card-title:16px;--font-size-section-title:18px;--font-size-page-title:21px;--ui-bg:#f7f7f8;--ui-panel:#fff;--ui-text:#25262a;--ui-muted:#74777f;--ui-border:#e8e8ea;--ui-border-strong:#dddddf;--ui-primary:#861e34;--ui-primary-soft:#f5eef0;--ui-radius:13px;--ui-shadow:0 1px 2px rgba(17,24,39,.025),0 8px 24px rgba(17,24,39,.035)}html,body,#root{min-height:100%}body{font-size:var(--font-size-body);line-height:1.45;background:var(--ui-bg);color:var(--ui-text)}.app{grid-template-columns:232px minmax(0,1fr);background:var(--ui-bg)}.app>aside{width:232px;padding:0 12px 14px;border-right:1px solid var(--ui-border);box-shadow:none}.brand{min-height:72px;margin:0 -12px 14px;padding:0 18px;border-bottom:1px solid var(--ui-border);gap:10px}.brand>span{width:34px;height:34px;border-radius:9px;font-size:13px}.brand b{font-size:15px;line-height:18px}.brand small{font-size:12px;line-height:16px}.brand-plain{padding-inline:18px}.brand-plain>b{font-size:15px;font-weight:600;color:var(--ui-text)}.app nav{gap:3px}.nav-section-label{display:block;padding:8px 10px 6px;color:#9a9ca2;font-size:11px;font-weight:700;letter-spacing:.09em}.nav-admin-label{margin-top:14px;padding-top:15px;border-top:1px solid var(--ui-border)}.app nav button{height:42px;padding:0 10px;border-radius:9px;color:#575a62;font-size:13px;font-weight:600;gap:10px;transition:background .16s ease,color .16s ease}.app nav button svg{width:17px;height:17px;stroke-width:1.8}.app nav button .nav-arrow{width:15px;height:15px;margin-left:auto;color:#a5a7ac}.app nav button:hover{background:#f7f7f8;color:#2f3035}.app nav button.active{background:#f1f1f3;color:var(--ui-primary);box-shadow:none}.app nav button.active .nav-arrow{color:var(--ui-primary)}.aside-user{padding:14px 5px 0}.aside-user>span{width:32px;height:32px;font-size:12px}.aside-user b{font-size:13px;line-height:17px}.aside-user small{font-size:11px}.aside-user button{width:36px;height:36px;display:grid;place-items:center;border-radius:8px}.aside-user button:hover{background:#f4f4f5}.app>main{grid-column:2;min-width:0}.topbar{height:72px;padding:12px 28px;border-bottom:1px solid var(--ui-border);gap:12px}.topbar small{font-size:12px;color:#92949a}.topbar h1{font-size:var(--font-size-page-title);line-height:26px;font-weight:600;letter-spacing:-.015em;color:var(--ui-text)}.topbar .role{padding:6px 9px;border:1px solid var(--ui-border);background:#fafafa;font-size:12px;font-weight:600}.topbar .role svg{width:15px;height:15px}.topbar-minimal{justify-content:flex-end}.topbar-minimal .menu{margin-right:auto}.content{width:100%;max-width:1180px;padding:28px 32px 44px}.eyebrow{font-size:11px;letter-spacing:.1em}.intro h2,.records-head h2,.admin-head h2{margin:5px 0 3px;font-size:20px;line-height:26px;font-weight:600;letter-spacing:-.01em}.intro p,.records-head p,.admin-head p{font-size:13px;color:var(--ui-muted)}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.module{min-height:132px;padding:16px;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;align-items:start;gap:10px 12px;border:1px solid var(--ui-border);border-radius:var(--ui-radius);box-shadow:var(--ui-shadow);overflow:visible}.module:hover{transform:none;border-color:#d9d9dc;box-shadow:0 4px 18px #1118270e}.module-icon{width:40px;height:40px;border-radius:10px}.module-icon svg{width:19px;height:19px}.module-copy>span{font-size:10px}.module h3{margin:1px 0 2px;font-size:var(--font-size-card-title);line-height:21px;font-weight:600}.module p{font-size:13px;line-height:18px;color:var(--ui-muted)}.module-icon{background:var(--ui-primary);color:#fff}.module.gold .module-icon{background:#99703f;color:#fff}.module button{grid-column:2;justify-self:start;min-height:40px;padding:0 13px;border-radius:9px;font-size:13px;font-weight:600}.module.gold button{background:#fff;border-color:#ddd5ca;color:#72522f}.back{font-size:13px;font-weight:600}.stepbar{max-width:500px;margin:12px 0 16px}.stepbar span{font-size:12px}.stepbar b{width:24px;height:24px;font-size:11px}.registration{gap:12px}.registration>section{padding:18px;border-color:var(--ui-border);border-radius:var(--ui-radius);box-shadow:var(--ui-shadow)}.registration section>header{gap:11px;padding-bottom:14px}.registration section>header>span{width:32px;height:32px;border-radius:8px;font-size:12px}.registration h2{font-size:var(--font-size-section-title);line-height:23px;font-weight:600}.registration header p{font-size:12px;line-height:17px}.fields{gap:14px;padding-top:16px}.fields label,.dialog-fields label{gap:6px;font-size:13px;font-weight:600}.fields input,.fields select,.dialog-fields input,.dialog-fields select{height:42px;border-color:var(--ui-border-strong);border-radius:9px;font-size:13px;background:#fff}.uploads{gap:12px;padding-top:16px}.upload{min-height:130px;border-width:1px;border-radius:11px}.upload svg{width:24px}.upload b{font-size:13px}.upload span{font-size:12px}.registration footer{padding:2px 0 16px}.registration section>header>span{background:var(--ui-primary);color:#fff}.registration section:nth-of-type(2)>header>span{background:#3e665b}.registration section:nth-of-type(3)>header>span{background:#7b5b34}.registration section:nth-of-type(4)>header>span{background:#414b5c}.registration .ine-section{order:1}.registration .credential-section{order:4}.home-content{padding-top:24px}.records-toolbar{display:flex;justify-content:flex-end}.admin-actions{display:flex;justify-content:flex-end;margin-bottom:12px}.admin-actions .primary{display:flex;align-items:center;gap:7px}.admin-actions svg{width:16px}.upload-zone{min-height:238px;padding:14px;border:1px dashed #aeb2b8;border-radius:11px;background:#fff;display:grid;align-content:start;gap:10px}.upload-zone.ready{border-color:#35715e;background:#fbfdfc}.ine-guide{position:relative;width:min(260px,100%);aspect-ratio:1.58;margin:auto;border:2px dashed #a2a6ac;border-radius:9px;padding:13px;display:grid;grid-template-columns:54px 1fr;gap:12px;overflow:hidden}.ine-guide:before{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;border:1px solid #e0e1e3;border-radius:6px}.ine-photo{z-index:1;width:50px;height:64px;align-self:center;border:2px solid #6c7179;border-radius:5px;background:linear-gradient(#fff 38%,#d9dbde 39%)}.ine-lines{z-index:1;display:grid;align-content:center;gap:9px}.ine-lines i{height:3px;border-radius:3px;background:#777c84}.ine-lines i:nth-child(2){width:78%}.ine-lines i:nth-child(3){width:56%}.ine-guide.back{grid-template-columns:1fr}.ine-guide.back .ine-photo{display:none}.ine-guide.back .ine-lines{padding:0 15px}.ine-code{z-index:1;height:24px;margin:0 15px;border:2px solid #555b64;background:repeating-linear-gradient(90deg,#555b64 0 2px,transparent 2px 5px)}.upload-copy{text-align:center;display:grid;gap:2px}.upload-copy b{font-size:13px}.upload-copy span{font-size:12px;color:var(--ui-muted);overflow-wrap:anywhere}.upload-actions{display:flex;justify-content:center;gap:8px}.upload-actions label{min-height:40px;padding:0 11px;border:1px solid var(--ui-border-strong);border-radius:8px;background:#fff;display:flex;align-items:center;gap:6px;color:#45484f;font-size:12px;font-weight:600;cursor:pointer}.upload-actions label:first-child{background:var(--ui-primary);border-color:var(--ui-primary);color:#fff}.upload-actions input{position:absolute;width:1px;height:1px;opacity:0}.upload-actions svg{width:15px;height:15px}.analysis-action{display:flex;align-items:center;gap:12px;margin-top:14px}.analysis-action small{font-size:12px;color:var(--ui-muted)}.analyze-button{display:flex;align-items:center;gap:7px}.analyze-button svg{width:17px;height:17px}.spin{animation:analysis-spin .8s linear infinite}.capture-progress{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;border:1px solid #cfe3da;border-radius:9px;background:#fbfdfc;color:#285f4d;font-size:13px;font-weight:600}.capture-progress svg{flex:0 0 auto;width:17px;height:17px}.analysis-result{margin-top:14px;border:1px solid var(--ui-border-strong);border-left:4px solid #9a6b2f;border-radius:11px;background:#fff;padding:14px}.analysis-result.rejected{border-left-color:#b42318}.analysis-result>header{display:flex;gap:10px;padding:0 0 12px;border-bottom:1px solid var(--ui-border)}.analysis-result>header>svg{width:20px;height:20px;color:#8a612e}.analysis-result.rejected>header>svg{color:#b42318}.analysis-result>header div,.analysis-checks>div>div{display:grid;gap:2px}.analysis-result b{font-size:13px;font-weight:600}.analysis-result span,.analysis-result>small{font-size:12px;color:var(--ui-muted)}.analysis-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 16px;padding:12px 0}.analysis-checks>div{display:flex;align-items:flex-start;gap:8px}.analysis-checks svg{flex:0 0 auto;width:16px;height:16px;margin-top:2px}.analysis-checks .passed svg{color:#257154}.analysis-checks .warning svg{color:#9a6b2f}.analysis-checks .failed svg{color:#b42318}@keyframes analysis-spin{to{transform:rotate(360deg)}}.primary,.secondary{min-height:42px;padding:0 16px;border-radius:9px;font-size:13px;font-weight:600}.primary{background:var(--ui-primary)}.secondary{border-color:var(--ui-border-strong)}.records-head,.admin-head{align-items:end}.search{height:42px;width:280px;border-color:var(--ui-border-strong);border-radius:9px}.search input{font-size:13px}.table-wrap{margin-top:18px;border-color:var(--ui-border);border-radius:var(--ui-radius);box-shadow:var(--ui-shadow)}table{font-size:13px}th,td{padding:12px 14px}th{font-size:11px;letter-spacing:.055em;background:#fafafa;color:#767981}tbody tr:hover{background:#fcfcfd}.tag,.status,.user-role{font-size:11px;padding:4px 8px}.empty{min-height:210px;font-size:13px}.empty .spinner{width:28px;height:28px;border-width:3px}.row-actions button{min-height:36px;padding:0 9px;font-size:12px;border-color:var(--ui-border);border-radius:8px}.row-actions svg{width:14px}.admin-head .primary{min-height:40px}.users-page>.alert{margin-top:12px}.alert{padding:10px 12px;border-radius:9px;font-size:13px}.dialog-layer{background:#181a1f6b}.user-dialog{width:min(500px,100%);padding:18px;border-radius:14px;gap:14px;box-shadow:0 20px 50px #1118272e}.user-dialog>header{padding-bottom:13px}.user-dialog h2{font-size:17px;font-weight:600}.user-dialog header p{font-size:12px}.user-dialog header button{width:36px;height:36px}.dialog-fields{gap:13px}.dialog-fields small{font-size:12px}.user-dialog footer{gap:8px}.login form{width:min(410px,100%);padding:30px;border-radius:16px;gap:15px}.login-mark{width:44px;height:44px}.login h1{font-size:21px}.login p,.login label{font-size:13px}.login input{height:42px;border-radius:9px;font-size:13px}@media(max-width:1024px){.content{padding:24px}.module-grid{grid-template-columns:1fr}}@media(max-width:800px){.app{display:block}.app>aside{width:232px}.topbar{height:64px;padding:10px 14px}.topbar h1{font-size:18px;line-height:22px}.topbar small{font-size:11px}.content{padding:20px 14px 32px}.module{padding:15px;grid-template-columns:38px 1fr}.module-icon{width:38px;height:38px}.module button{grid-column:1/-1;width:100%;justify-self:stretch}.fields,.uploads{grid-template-columns:1fr}.registration>section{padding:16px}.records-head,.admin-head{display:grid;align-items:stretch}.search{width:100%}.table-wrap{margin-top:14px}.dialog-layer{padding:10px}.user-dialog{max-height:calc(100vh - 20px);padding:16px}.registration footer{padding-bottom:max(10px,env(safe-area-inset-bottom))}}@media(max-width:480px){.upload-actions,.analysis-checks{display:grid;grid-template-columns:1fr}.upload-actions label{justify-content:center;padding-inline:7px}.ine-guide{width:100%}.analysis-action{align-items:stretch;flex-direction:column}.analyze-button{justify-content:center}}@media(prefers-reduced-motion:reduce){.module,.app nav button{transition:none}}.analysis-result,.analysis-result.rejected{border-left:1px solid var(--ui-border-strong)}.preview-layer{position:fixed;z-index:1100;top:0;right:0;bottom:0;left:0;padding:20px;display:grid;place-items:center;background:#121418c2}.preview-dialog{width:min(820px,100%);max-height:calc(100dvh - 40px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;background:#fff;border-radius:16px;box-shadow:0 24px 70px #00000047}.preview-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--ui-border)}.preview-dialog h2{font-size:17px;font-weight:600}.preview-dialog header p{margin-top:2px;font-size:13px;color:var(--ui-muted)}.preview-dialog header button{width:38px;height:38px;display:grid;place-items:center;border-radius:9px}.preview-dialog header svg{width:20px}.preview-image{min-height:0;padding:14px;display:grid;place-items:center;overflow:auto;background:#f4f4f5}.preview-image img{display:block;max-width:100%;max-height:calc(100dvh - 190px);object-fit:contain;border-radius:10px}.preview-dialog>footer{display:flex;justify-content:flex-end;padding:12px 18px;border-top:1px solid var(--ui-border)}@media(max-width:800px){.preview-layer{padding:0}.preview-dialog{width:100%;height:100dvh;max-height:none;border-radius:0}.preview-image img{max-height:calc(100dvh - 180px)}.preview-dialog>footer{padding-bottom:max(12px,env(safe-area-inset-bottom))}.preview-dialog>footer button{width:100%}}.form-page{max-width:980px}.form-page .stepbar{margin-bottom:14px}.registration{display:block;padding:0 24px;background:#fff;border:1px solid var(--ui-border);border-radius:16px;box-shadow:var(--ui-shadow)}.registration>section{padding:24px 0;border:0;border-bottom:1px solid var(--ui-border);border-radius:0;box-shadow:none}.registration>section:last-of-type{border-bottom:0}.registration section>header{padding-bottom:16px}.registration footer{margin:0;padding:20px 0;gap:10px}.fields{padding-top:0}.fields input::placeholder,.dialog-fields input::placeholder,.login input::placeholder{color:#a7abb2;opacity:1}.dialog-fields input,.dialog-fields select{color:#25262a;background:#fff}.upload-zone{min-height:184px;place-content:center;padding:20px;border-color:#c8cbd0;background:#fcfcfd}.upload-zone.ready{background:#fff}.upload-symbol{width:42px;height:42px;margin:0 auto;border-radius:50%;display:grid;place-items:center;background:#f0f1f2;color:#686d75}.upload-symbol svg{width:19px;height:19px}.upload-actions button,.upload-actions label{min-height:40px;padding:0 12px;border:1px solid var(--ui-border-strong);border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;gap:6px;color:#45484f;font-size:12px;font-weight:600;cursor:pointer}.upload-actions button{background:var(--ui-primary);border-color:var(--ui-primary);color:#fff}.upload-actions label:first-child{background:#fff;border-color:var(--ui-border-strong);color:#45484f}.analysis-action{justify-content:flex-end}.analysis-action small{display:none}.camera-layer{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;padding:20px;display:grid;place-items:center;background:#121418b8}.camera-dialog{width:min(760px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:16px;box-shadow:0 24px 70px #00000047}.camera-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--ui-border)}.camera-dialog h2{font-size:17px;font-weight:600}.camera-dialog header p{margin-top:2px;font-size:13px;color:var(--ui-muted)}.camera-dialog header button{width:38px;height:38px;display:grid;place-items:center;border-radius:9px}.camera-frame{position:relative;margin:18px;background:#111;aspect-ratio:16/10;border-radius:12px;overflow:hidden}.camera-frame video{width:100%;height:100%;object-fit:cover}.camera-guide{position:absolute;top:10%;right:8%;bottom:10%;left:8%;border:2px dashed rgba(255,255,255,.95);border-radius:14px;box-shadow:0 0 0 999px #00000057}.camera-guide i{position:absolute;width:28px;height:28px;border-color:#fff}.camera-guide i:nth-child(1){top:-2px;left:-2px;border-top:4px solid;border-left:4px solid;border-radius:10px 0 0}.camera-guide i:nth-child(2){top:-2px;right:-2px;border-top:4px solid;border-right:4px solid;border-radius:0 10px 0 0}.camera-guide i:nth-child(3){bottom:-2px;left:-2px;border-bottom:4px solid;border-left:4px solid;border-radius:0 0 0 10px}.camera-guide i:nth-child(4){right:-2px;bottom:-2px;border-right:4px solid;border-bottom:4px solid;border-radius:0 0 10px}.camera-guide span{position:absolute;left:50%;bottom:10px;transform:translate(-50%);padding:5px 9px;border-radius:6px;background:#000000ad;color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em}.camera-dialog>footer{display:flex;justify-content:flex-end;gap:8px;padding:0 18px 18px}.camera-shot{display:flex;align-items:center;gap:7px}.camera-shot svg{width:17px}.camera-error{margin:18px;padding:28px;display:flex;justify-content:center;align-items:center;gap:10px;border:1px solid #f0c7c4;border-radius:12px;color:#9f2d25;background:snow}.camera-error svg{width:20px}.login form{padding:34px}.login h1{margin-bottom:0}.login p{margin-top:-8px;margin-bottom:4px}.login form>.primary{margin-top:3px}@media(max-width:800px){.registration{padding:0 16px}.registration>section{padding:20px 0}.camera-layer{padding:0;height:100dvh;overflow:hidden}.camera-dialog{width:100%;height:100dvh;min-height:0;max-height:none;overflow:hidden;border-radius:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto}.camera-dialog>header{flex:0 0 auto;padding:14px 16px}.camera-dialog>header h2{font-size:16px}.camera-frame{width:auto;height:auto;min-height:0;margin:10px 14px;aspect-ratio:auto}.camera-dialog>footer{position:relative;z-index:2;flex:0 0 auto;padding:10px 14px max(14px,env(safe-area-inset-bottom));border-top:1px solid var(--ui-border);background:#fff}.camera-dialog>footer button{flex:1;min-height:46px}.analysis-action .analyze-button{width:100%}}.records-content .search{height:40px}.record-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.record-card{padding:13px;gap:11px}.record-card-top{align-items:center}.record-number{margin-right:auto;color:var(--ui-muted);font-size:11px;font-weight:600}.record-person>span{width:34px;height:34px;font-size:12px}.record-person h3{font-size:13px;line-height:18px}.record-person p,.record-person small{font-size:12px;color:var(--ui-muted)}.record-person small{display:block;margin-top:2px;overflow-wrap:anywhere}.record-date{padding-top:9px;font-size:11px}.trash-action,.restore-action,.photo-action{min-height:36px;font-size:12px}.photo-action{display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--ui-border-strong);border-radius:9px;background:#fff;color:#45484f;font-weight:600}.photo-action svg{width:16px}.records-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:10px 12px;background:#fff;border:1px solid var(--ui-border);border-radius:10px;color:var(--ui-muted);font-size:12px}.records-pagination label,.records-pagination>div{display:flex;align-items:center;gap:8px}.records-pagination select,.records-pagination button{height:34px;border:1px solid var(--ui-border-strong);border-radius:8px;background:#fff;padding:0 9px;font-size:12px}.records-pagination button:disabled{opacity:.45}.ine-photos-dialog{width:min(980px,100%);max-height:calc(100dvh - 40px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;background:#fff;border-radius:16px}.ine-photos-dialog>header{display:flex;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--ui-border)}.ine-photos-dialog h2{margin:0;font-size:16px}.ine-photos-dialog header p{margin:2px 0 0;font-size:12px;color:var(--ui-muted)}.ine-photos-dialog header button{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:8px;background:#f5f5f6}.ine-photo-grid{min-height:0;overflow:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px;background:#f4f4f5}.ine-photo-grid figure{margin:0;display:grid;gap:7px}.ine-photo-grid figcaption{font-size:12px;font-weight:600}.ine-photo-grid img{width:100%;height:100%;max-height:65dvh;object-fit:contain;background:#222;border-radius:10px}.ine-photos-dialog>footer{display:flex;justify-content:flex-end;padding:12px 18px;border-top:1px solid var(--ui-border)}@media(max-width:1200px){.record-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:800px){.record-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.records-pagination{align-items:stretch;flex-direction:column}.records-pagination>div{justify-content:space-between}.ine-photos-dialog{height:100dvh;max-height:none;border-radius:0}.ine-photo-grid{grid-template-columns:1fr}.ine-photo-grid img{max-height:52dvh}}@media(max-width:560px){.record-cards{grid-template-columns:1fr}}.records-message{margin-top:12px}.record-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.record-card{min-width:0;padding:16px;display:grid;gap:15px;background:#fff;border:1px solid var(--ui-border);border-radius:var(--ui-radius);box-shadow:var(--ui-shadow)}.record-card-top{display:flex;justify-content:space-between;gap:8px}.record-person{display:flex;align-items:center;gap:11px}.record-person>span{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border-radius:10px;background:#414b5c;color:#fff;font-weight:700}.record-person h3{margin:0;font-size:15px;line-height:20px;font-weight:600}.record-person p{margin:2px 0 0;color:var(--ui-muted);font-size:13px}.record-date{display:flex;align-items:center;gap:7px;padding-top:12px;border-top:1px solid var(--ui-border);color:var(--ui-muted);font-size:12px}.record-date svg{width:16px;flex:0 0 auto}.record-card>small{color:var(--ui-muted);font-size:12px}.trash-action,.restore-action{min-height:40px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:9px;font-size:13px;font-weight:600}.trash-action{border:1px solid #e9c7cc;background:#fff;color:#9a2940}.restore-action{border:1px solid #cfe3da;background:#fff;color:#257154}.trash-action svg,.restore-action svg{width:16px}.record-cards>.empty{grid-column:1/-1;background:#fff;border:1px solid var(--ui-border);border-radius:var(--ui-radius)}@media(max-width:1024px){.record-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.record-cards{grid-template-columns:1fr}.record-card{padding:14px}}.registration{display:flex;flex-direction:column}.registration .ine-section{order:1;border-bottom:1px solid var(--ui-border)!important}.registration .personal-section{order:2}.registration .address-section{order:3}.registration .credential-section{order:4;border-bottom:0!important}.registration>.alert{order:5}.registration>footer{order:6}.records-content{font-size:13px}.records-content .record-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.records-content .record-card{padding:13px;gap:11px}.records-content .record-person>span{width:34px;height:34px;font-size:12px}.records-content .record-person h3{font-size:13px;line-height:18px}.records-content .record-person p,.records-content .record-person small{font-size:12px}.records-content .trash-action,.records-content .restore-action,.records-content .photo-action{min-height:36px;font-size:12px}@media(max-width:1200px){.records-content .record-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.records-content .record-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.records-content .record-cards{grid-template-columns:1fr}}:root{--font-size-caption:11px;--font-size-meta:12px;--font-size-body:13px;--font-size-control:13px;--font-size-card-title:14px;--font-size-section-title:16px;--font-size-page-title:20px;--ui-radius:11px;--ui-shadow:0 1px 2px rgba(17,24,39,.02),0 5px 16px rgba(17,24,39,.025)}body{font-size:13px;line-height:1.4}.app{grid-template-columns:216px minmax(0,1fr)}.app>aside{width:216px;padding:0 10px 12px}.brand{min-height:60px;margin:0 -10px 10px;padding:0 14px}.brand-plain{padding-inline:14px}.brand-plain>b{font-size:14px}.app nav button{height:40px;padding:0 9px;border-radius:8px;font-size:13px;font-weight:500;gap:9px}.app nav button svg{width:16px;height:16px}.nav-section-label{padding:7px 9px 5px;font-size:10px}.aside-user{padding-top:11px}.aside-user b{font-size:12px}.aside-user small{font-size:10px}.app>main{grid-column:2}.topbar{height:60px;padding:9px 24px}.topbar h1{font-size:18px;line-height:22px}.topbar .role{font-size:11px;padding:5px 8px}.content{max-width:1160px;padding:22px 24px 34px}.intro h2,.records-head h2,.admin-head h2{font-size:18px;line-height:23px}.intro p,.records-head p,.admin-head p{font-size:12px}.module-grid{gap:10px;margin-top:16px}.module{min-height:116px;padding:14px;grid-template-columns:36px minmax(0,1fr);gap:8px 10px;border-radius:11px}.module-icon{width:36px;height:36px;border-radius:8px}.module h3{font-size:14px;line-height:19px}.module p{font-size:12px;line-height:17px}.module button{min-height:40px;font-size:12px;border-radius:8px}.form-page{max-width:900px}.stepbar{margin:9px 0 12px}.registration{padding:0 18px;border-radius:12px}.registration>section{padding:18px 0}.registration section>header{padding-bottom:12px;gap:9px}.registration section>header>span{width:28px;height:28px;border-radius:7px;font-size:11px}.registration h2{font-size:16px;line-height:21px}.registration header p{font-size:12px;line-height:16px}.fields{gap:11px}.fields label,.dialog-fields label{font-size:12px;gap:5px}.fields input,.fields select,.dialog-fields input,.dialog-fields select{height:40px;border-radius:8px;font-size:13px}.uploads{gap:10px;padding-top:12px}.upload-zone{min-height:160px;padding:14px;border-radius:9px}.upload-symbol{width:36px;height:36px}.upload-copy b{font-size:12px}.upload-copy span{font-size:11px}.registration footer{padding:14px 0}.primary,.secondary{min-height:40px;padding:0 14px;border-radius:8px;font-size:13px}.analysis-result{padding:12px;border-radius:9px}.analysis-result b{font-size:12px}.analysis-result span,.analysis-result>small{font-size:11px}.records-content .search{height:40px;border-radius:8px}.record-cards{margin-top:12px}.records-content .record-card{border-radius:10px;box-shadow:0 1px 2px #11182705}.records-content .record-person h3{font-size:13px;font-weight:600}.records-content .record-person p,.records-content .record-person small{font-size:11px}.records-pagination{border-radius:9px}.table-wrap{margin-top:14px;border-radius:11px}.user-dialog{padding:15px;border-radius:11px}.user-dialog h2{font-size:15px}.login form{width:min(390px,100%);padding:26px;border-radius:12px;gap:13px}.login h1{font-size:19px}.login p,.login label{font-size:12px}.login input{height:40px;font-size:13px;border-radius:8px}.preview-dialog,.ine-photos-dialog,.camera-dialog{border-radius:12px}.preview-dialog h2,.ine-photos-dialog h2,.camera-dialog h2{font-size:15px}@media(max-width:800px){.app>aside{width:216px}.topbar{height:56px;padding:8px 12px}.content{padding:16px 12px 26px}.registration{padding:0 13px}.registration>section{padding:15px 0}.module{padding:12px}.preview-dialog,.ine-photos-dialog,.camera-dialog{border-radius:0}}.login{min-height:100dvh;padding:24px;background:#fafafa;display:grid;place-items:center}.login-card{width:min(400px,100%);padding:34px!important;gap:16px!important;border:1px solid #e7e7e9!important;border-radius:18px!important;background:#fff;box-shadow:0 18px 55px #191b2012!important}.login-mark{width:42px!important;height:42px!important;margin:0 auto 2px;display:grid;place-items:center;border:1px solid var(--ui-border);border-radius:12px;background:#fafafa;color:var(--ui-primary);box-shadow:0 6px 18px #11182712}.login-mark svg{width:20px;height:20px}.login-heading{text-align:center}.login-heading>span{display:block;margin-bottom:7px;color:var(--ui-primary);font-size:10px;font-weight:700;letter-spacing:.13em}.login-heading h1{margin:0!important;font-size:21px!important;line-height:27px;font-weight:650;letter-spacing:-.02em}.login-heading p{margin:4px 0 0!important;color:var(--ui-muted);font-size:12px!important}.login-card>label{display:grid;gap:6px;font-size:12px!important;font-weight:600}.login-control{height:42px;display:flex;align-items:center;border:1px solid var(--ui-border-strong);border-radius:9px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.login-control:focus-within{border-color:#a94b60;box-shadow:0 0 0 3px #861e3414}.login-control>svg{width:16px;height:16px;margin-left:12px;color:#8b8e95}.login-control input{height:40px!important;min-width:0;flex:1;padding:0 10px!important;border:0!important;outline:0;box-shadow:none!important}.login-control button{width:40px;height:40px;display:grid;place-items:center;border:0;background:transparent;color:#74777f}.login-control button svg{width:16px;height:16px}.login-submit{width:100%;display:flex;align-items:center;justify-content:center;gap:7px}.login-submit svg{width:16px}.login-submit:disabled{opacity:.7;cursor:wait}.login-help{text-align:center;color:#999ca3;font-size:10px}.profile-page{max-width:520px;padding-top:32px}.profile-card{padding:18px;border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-panel);box-shadow:var(--ui-shadow)}.profile-card>header{padding-bottom:13px;border-bottom:1px solid var(--ui-border)}.profile-card h2{margin:0;font-size:15px;line-height:20px}.profile-card header p{margin:1px 0 3px;color:var(--ui-muted);font-size:12px}.profile-card header small{display:block;overflow:hidden;color:var(--ui-muted);font-size:11px;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap}.profile-card>.alert{margin-top:12px}.profile-fields{display:grid;gap:11px;padding:14px 0}.profile-fields label{display:grid;gap:5px;font-size:13px;font-weight:600}.profile-control{height:40px;display:flex;align-items:center;border:1px solid var(--ui-border-strong);border-radius:8px;background:var(--ui-panel)}.profile-control:focus-within{border-color:#a94b60;box-shadow:0 0 0 3px #861e3414}.profile-control input{height:38px;min-width:0;flex:1;padding:0 11px;border:0;outline:0;background:transparent;font-size:13px}.profile-control input::placeholder{color:#a7abb2}.profile-control button{width:40px;height:38px;display:grid;place-items:center;border:0;background:transparent;color:#74777f}.profile-control button svg{width:16px;height:16px}.password-rule{margin-top:-3px;color:var(--ui-muted);font-size:11px}.profile-card footer{display:grid;grid-template-columns:1fr 1.15fr;gap:8px;padding-top:13px;border-top:1px solid var(--ui-border)}.profile-card footer button{width:100%;padding-inline:10px}.alert.success{border:1px solid #cfe3da;background:#f7fbf9;color:#27604e}@media(max-width:560px){.login{padding:14px}.login-card{padding:26px 20px!important;border-radius:14px!important}.profile-page{max-width:none;padding-top:18px}.profile-card{padding:16px}.profile-card footer{grid-template-columns:1fr}.profile-card footer .primary{grid-row:1}.profile-card footer .secondary{grid-row:2}}.content.profile-page{width:100%;max-width:none;min-height:calc(100dvh - 60px);margin:0;padding:0}.profile-page .profile-card{width:100%;min-height:calc(100dvh - 60px);padding:28px 32px;display:flex;flex-direction:column;border:0;border-radius:0;background:var(--ui-panel);box-shadow:none}.profile-page .profile-card>header,.profile-page .profile-card>.alert,.profile-page .profile-fields,.profile-page .profile-card>footer{width:min(520px,100%);margin-inline:auto}.profile-page .profile-card>footer{margin-top:auto}@media(max-width:800px){.content.profile-page,.profile-page .profile-card{min-height:calc(100dvh - 56px)}.profile-page .profile-card{padding:20px 16px}.profile-page .profile-card>footer{grid-template-columns:1fr 1.15fr}.profile-page .profile-card footer .primary,.profile-page .profile-card footer .secondary{grid-row:auto}}@media(max-width:480px){.profile-page .profile-card{padding:18px 14px max(18px,env(safe-area-inset-bottom))}.profile-page .profile-card>footer{grid-template-columns:1fr}.profile-page .profile-card footer .primary{grid-row:1}.profile-page .profile-card footer .secondary{grid-row:2}}.record-list{margin-top:14px;overflow:hidden;border:1px solid var(--ui-border);border-radius:11px;background:#fff;box-shadow:var(--ui-shadow)}.record-list-head,.record-row{display:grid;grid-template-columns:46px 110px minmax(170px,1.5fr) minmax(130px,1fr) minmax(155px,1.15fr) minmax(150px,1fr) 176px;align-items:center;gap:12px}.record-list-head{min-height:40px;padding:0 14px;border-bottom:1px solid var(--ui-border);background:#fafafa;color:#767981;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.record-row{min-height:74px;padding:11px 14px;border-bottom:1px solid var(--ui-border);transition:background .16s ease}.record-row:last-of-type{border-bottom:0}.record-row:hover{background:#fcfcfd}.record-row .record-number{margin:0;color:var(--ui-muted);font-size:12px;font-weight:600}.record-category{display:flex;align-items:flex-start;flex-direction:column;gap:5px}.record-row .tag,.record-row .status{width:max-content}.record-name h3{margin:0;font-size:13px;line-height:18px;font-weight:600}.record-municipality,.record-curp{min-width:0;overflow-wrap:anywhere;color:#555961;font-size:12px}.record-row .record-date{padding:0;border:0;display:flex;align-items:flex-start;gap:6px;color:var(--ui-muted);font-size:11px;line-height:16px}.record-row .record-date svg{width:14px;height:14px;margin-top:1px}.record-row .record-date small{display:block}.record-actions{display:flex;justify-content:flex-end;gap:6px}.record-actions .trash-action,.record-actions .restore-action,.record-actions .photo-action{width:auto;min-height:34px;padding:0 8px;border-radius:7px;font-size:11px;white-space:nowrap}.record-actions svg{width:14px;height:14px}.record-list-empty{min-height:210px;border:0!important;border-radius:0!important;box-shadow:none!important}.record-list>.empty{grid-column:auto}@media(max-width:1100px){.record-list{overflow-x:auto}.record-list-head,.record-row{min-width:960px}}@media(max-width:800px){.record-list{overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}.record-list-head{display:none}.record-row{min-height:0;margin-bottom:8px;padding:12px;grid-template-columns:52px minmax(0,1fr) auto;gap:8px 12px;border:1px solid var(--ui-border);border-radius:10px;background:#fff}.record-row:last-of-type{border-bottom:1px solid var(--ui-border)}.record-row>[data-label]:before{display:block;margin-bottom:2px;color:#91949a;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.record-row>[data-label="No."]:before{content:"No."}.record-row>[data-label=Categoría]:before{content:"Categoría"}.record-row>[data-label="Nombre completo"]:before{content:"Nombre"}.record-row>[data-label=Municipio]:before{content:"Municipio"}.record-row>[data-label=CURP]:before{content:"CURP"}.record-row>[data-label=Registro]:before{content:"Registro"}.record-number{grid-column:1}.record-category{grid-column:2}.record-name{grid-column:1/-1}.record-municipality{grid-column:1/2}.record-curp{grid-column:2/-1}.record-row .record-date{grid-column:1/-1}.record-actions{grid-column:1/-1;justify-content:stretch}.record-actions button{flex:1}.record-actions button span{display:inline}.record-list-empty{background:#fff!important;border:1px solid var(--ui-border)!important;border-radius:10px!important}}@media(max-width:480px){.record-row{grid-template-columns:1fr 1fr}.record-category{grid-column:2}.record-actions{display:grid;grid-template-columns:1fr}.record-actions .trash-action,.record-actions .restore-action,.record-actions .photo-action{width:100%;min-height:40px}}@media(min-width:801px){.record-list-head,.record-row{grid-template-columns:42px 88px minmax(170px,1.35fr) minmax(118px,.85fr) minmax(150px,1fr) minmax(168px,1.05fr) 210px;gap:10px}.record-row .tag,.record-row .status{max-width:86px;padding:4px 6px;font-size:10px;overflow:hidden;text-overflow:ellipsis}.record-municipality{display:-webkit-box;overflow:hidden;line-height:16px;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.record-actions .trash-action,.record-actions .restore-action,.record-actions .photo-action{padding-inline:9px}.record-actions .photo-action{min-width:88px}}@media(min-width:801px)and (max-width:1100px){.record-list-head,.record-row{min-width:1040px}}.record-actions .trash-action{width:36px;flex:0 0 36px;padding:0}@media(max-width:800px){.record-actions .trash-action{width:40px;min-height:40px;flex:0 0 40px}.record-actions .photo-action{flex:1}}@media(max-width:480px){.record-actions{display:flex}.record-actions .trash-action{width:40px;flex:0 0 40px}.record-actions .photo-action{width:auto;flex:1}}.record-row>*{min-width:0}.record-actions{min-width:0}.record-list-head>span:last-child{justify-self:start}@media(min-width:801px){.record-actions{justify-content:flex-start}.record-actions .photo-action{max-width:110px}}
