:root{--primary:#2563eb;--primary-dark:#1d4ed8;--primary-soft:#eff6ff;--primary-border:#bfdbfe;--bg:#f5f7fb;--surface:#fff;--surface-soft:#f8fafc;--text:#172033;--text-soft:#475467;--muted:#667085;--muted-light:#98a2b3;--border:#e4e7ec;--border-dark:#d0d5dd;--success:#067647;--success-bg:#ecfdf3;--danger:#b42318;--danger-bg:#fef3f2;--warning:#93370d;--warning-bg:#fffaeb;--radius-sm:8px;--radius:12px;--radius-lg:16px;--shadow-sm:0 1px 2px #1018280a;--shadow:0 6px 20px #1018280f;--shadow-lg:0 20px 45px #1018281f;font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth;min-height:100%}body{background:linear-gradient(180deg, #fff 0, #f7f9fc 180px, var(--bg) 420px);min-width:320px;min-height:100vh;color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}strong,b{font-weight:700}#root{min-height:100vh}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-content{flex:1}.wrap{width:min(100% - 40px,1440px);margin:0 auto;padding:32px 0 48px}.app-header{z-index:50;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;width:100%;position:sticky;top:0;box-shadow:0 1px 5px #1018280a}.header-top{align-items:center;gap:28px;width:min(100% - 40px,1440px);min-height:68px;margin:auto;display:flex}.brand{color:#101828;letter-spacing:-.035em;white-space:nowrap;flex-shrink:0;font-size:20px;font-weight:800}.header-actions{flex:1;justify-content:flex-end;align-items:center;gap:12px;display:flex}.global-search{align-items:center;gap:8px;width:min(480px,100%);display:flex}.global-search-box{flex:1;position:relative}.search-icon{color:#98a2b3;pointer-events:none;font-size:18px;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.global-search input{border:1px solid var(--border-dark);width:100%;height:42px;color:var(--text);background:#fff;border-radius:10px;outline:none;padding:0 13px 0 40px;transition:border-color .15s,box-shadow .15s}.global-search input::placeholder{color:#98a2b3}.global-search input:focus{border-color:#84adff;box-shadow:0 0 0 3px #2563eb1a}.search-submit{height:42px}.search-submit:disabled{opacity:.55;cursor:not-allowed}.header-nav-row{border-top:1px solid #f2f4f7}.main-nav{scrollbar-width:none;align-items:center;gap:4px;width:min(100% - 40px,1440px);margin:auto;display:flex;overflow-x:auto}.main-nav::-webkit-scrollbar{display:none}.main-nav a{color:#475467;white-space:nowrap;padding:13px 14px;font-size:14px;font-weight:600;transition:color .15s,background .15s;position:relative}.main-nav a:hover,.main-nav a.active{color:var(--primary)}.main-nav a.active:after{content:"";background:var(--primary);border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:0;left:14px;right:14px}.page-title{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.page-title small{color:var(--primary);letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:800;display:block}.page-title h1{color:#101828;letter-spacing:-.035em;margin:0 0 5px;font-size:clamp(26px,3vw,32px);line-height:1.2}.page-title p,.card>p,.panel-head p,.nested-head p{color:var(--muted);margin:0;line-height:1.55}.btn{cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:8px 15px;font-weight:700;transition:background .15s,border-color .15s,box-shadow .15s,transform 80ms;display:inline-flex}.btn:active{transform:translateY(1px)}.btn.primary,.primary{background:var(--primary);color:#fff}.btn.primary:hover,.primary:hover{background:var(--primary-dark)}.btn.secondary,.secondary{color:#344054;border-color:var(--border-dark);background:#fff}.btn.secondary:hover,.secondary:hover{background:#f9fafb}.btn.danger,.danger{color:#fff;background:#dc2626}.danger-outline{color:var(--danger);background:#fff;border-color:#fda29b}.small{min-height:34px;padding:6px 10px;font-size:13px}.full{width:100%}.logout-btn{min-width:88px}.card,.filter-card,.form-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card{padding:22px}.filter-card{margin-bottom:20px;padding:18px}.form-panel{border-color:var(--primary-border);box-shadow:var(--shadow);margin-bottom:22px;padding:22px}.panel-head,.nested-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.panel-head h2,.nested-head h3,.nested-head h4,.card h2{color:#101828;letter-spacing:-.02em;margin:0 0 4px}.close{color:#475467;cursor:pointer;background:#f2f4f7;border:0;border-radius:9px;flex-shrink:0;width:34px;height:34px;font-size:20px}.close:hover{background:#eaecf0}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>span{color:#344054;font-size:13px;font-weight:700}.field input,.field select,.field textarea,.search input{border:1px solid var(--border-dark);width:100%;color:var(--text);background:#fff;border-radius:9px;outline:none;padding:10px 12px;transition:border-color .15s,box-shadow .15s}.field input,.field select{min-height:42px}.field textarea{resize:vertical;min-height:90px}.field input:focus,.field select:focus,.field textarea:focus,.search input:focus{border-color:#84adff;box-shadow:0 0 0 3px #2563eb1a}.field input::placeholder,.field textarea::placeholder{color:#98a2b3}.field select:disabled,.field input:disabled{color:#98a2b3;cursor:not-allowed;background:#f9fafb}.wide{grid-column:span 2}.form-grid .full{grid-column:1/-1}.geo-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.sub{border-top:1px solid #eaecf0;margin-top:20px;padding-top:18px}.sub h3{margin-top:0;font-size:14px}.actions{justify-content:flex-end;gap:9px;margin-top:20px;display:flex}.actions.left{justify-content:flex-start}.selection{background:var(--surface-soft);border:1px solid #eaecf0;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;margin-top:18px;padding:14px;display:flex}.notice{border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:18px;padding:12px 14px;font-size:14px;font-weight:600;display:flex}.notice.success{background:var(--success-bg);color:var(--success);border:1px solid #abefc6}.notice.error{background:var(--danger-bg);color:var(--danger);border:1px solid #fecdca}.notice button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:18px}.search{grid-template-columns:1fr auto;gap:9px;margin-top:14px;display:grid}.table-card{box-shadow:var(--shadow-sm);padding:0;overflow-x:auto}table{border-collapse:separate;border-spacing:0;width:100%}th,td{text-align:left;vertical-align:middle;border-bottom:1px solid #eaecf0;padding:14px 15px;font-size:14px}th{color:#667085;letter-spacing:.035em;text-transform:uppercase;white-space:nowrap;background:#f8fafc;font-size:11px;font-weight:800}tbody tr{transition:background .12s}tbody tr:hover{background:#f8fafcbf}tbody tr:last-child td{border-bottom:0}.empty{color:#98a2b3;text-align:center;padding:38px!important}.row-actions{white-space:nowrap;align-items:center;gap:10px;display:flex}.row-actions button{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:3px;font-weight:700}.row-actions button:hover{text-decoration:underline}.row-actions .red{color:var(--danger)}.expand{background:var(--primary-soft);width:28px;height:28px;color:var(--primary);cursor:pointer;border:0;border-radius:7px;margin-right:8px;font-size:19px}.nested-cell{background:var(--surface-soft);padding:0}.members{padding:18px}.member-block{border:1px solid var(--border);background:#fff;border-radius:11px;margin-top:10px;overflow:hidden}.member-row{grid-template-columns:auto 1.4fr .7fr 1fr 1fr auto;align-items:center;gap:11px;padding:12px 14px;display:grid}.member-row>div:nth-child(2),.app-row>div:first-child{flex-direction:column;display:flex}.member-row small,.app-row small{color:#98a2b3}.mono{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}.apps{border-top:1px solid var(--border);background:#f8fafc;padding:16px}.app-row{border:1px solid var(--border);background:#fff;border-radius:9px;grid-template-columns:1.4fr auto 1fr auto;align-items:center;gap:12px;margin-top:8px;padding:11px 13px;display:grid}.badge{text-transform:capitalize;border-radius:999px;align-items:center;width:fit-content;padding:4px 9px;font-size:11px;font-weight:800;display:inline-flex}.badge.not_applied{color:#475467;background:#f2f4f7}.badge.applied{color:#93370d;background:#fef0c7}.badge.approved{color:#067647;background:#dcfae6}.badge.rejected{color:#b42318;background:#fee4e2}.empty-box{color:#98a2b3;text-align:center;background:#fff;border:1px dashed #d0d5dd;border-radius:9px;padding:22px}.check{align-items:center;gap:7px;padding-top:27px;display:flex}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.result{margin-top:18px}.result pre{background:var(--surface-soft);white-space:pre-wrap;border-radius:9px;padding:13px;overflow-x:auto}.backdrop{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a8c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog{width:min(440px,100%);box-shadow:var(--shadow-lg);background:#fff;border-radius:16px;padding:24px}.dialog h2{letter-spacing:-.02em;margin-top:0}.dialog p{color:var(--muted)}.dob-grid{grid-template-columns:.75fr 1.35fr 1fr;gap:8px;display:grid}.dob-grid select{width:100%;min-width:0}.aadhaar-cell{flex-direction:column;gap:4px;display:flex}.aadhaar-actions{flex-wrap:wrap;gap:8px;display:flex}.link-btn{cursor:pointer;font-size:11px;color:var(--primary)!important;background:0 0!important;border:0!important;padding:0!important}.aadhaar-editor{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.aadhaar-editor input{min-width:190px}.audit-filter-card{margin-bottom:20px;padding:20px}.audit-filters{grid-template-columns:minmax(220px,2fr) repeat(5,minmax(130px,1fr));align-items:end;gap:14px;display:grid}.audit-filter-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.audit-table-summary{border-bottom:1px solid var(--border);color:#475467;justify-content:space-between;align-items:center;padding:14px 16px;font-size:13px;display:flex}.audit-date{white-space:nowrap}.audit-badge{letter-spacing:.04em;border-radius:999px;justify-content:center;align-items:center;min-width:68px;padding:5px 9px;font-size:10px;font-weight:800;display:inline-flex}.audit-create{color:#166534;background:#dcfce7}.audit-update{color:#1d4ed8;background:#dbeafe}.audit-delete{color:#b91c1c;background:#fee2e2}.audit-view{color:#7e22ce;background:#f3e8ff}.audit-login,.audit-logout{color:#475569;background:#f1f5f9}.audit-pagination{border-top:1px solid var(--border);justify-content:center;align-items:center;gap:18px;padding:18px;display:flex}.audit-modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a94;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.audit-modal{background:#fff;border-radius:16px;width:min(820px,100%);max-height:88vh;padding:24px;overflow-y:auto;box-shadow:0 24px 60px #0f172a40}.audit-modal-head{border-bottom:1px solid var(--border);justify-content:space-between;gap:20px;padding-bottom:16px;display:flex}.audit-modal-head h2{margin:4px 0}.audit-modal-head p{color:#64748b;margin:0}.audit-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 22px;display:grid}.audit-summary-grid>div,.audit-value-list>div{border:1px solid var(--border);border-radius:9px;padding:12px}.audit-summary-grid span,.audit-value-list span,.audit-change-values span{color:#64748b;margin-bottom:5px;font-size:12px;display:block}.audit-change-list{gap:12px;margin-top:12px;display:grid}.audit-change{border:1px solid var(--border);border-radius:10px;padding:14px}.audit-change-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:10px;display:grid}.audit-change-values>div{background:var(--surface-soft);border-radius:7px;padding:10px}.audit-change-values p{overflow-wrap:anywhere;margin:0}.audit-value-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.audit-empty-detail{background:var(--surface-soft);color:#64748b;border-radius:8px;margin:18px 0;padding:16px}.app-footer{border-top:1px solid var(--border);background:#ffffffeb;margin-top:auto}.app-footer-inner{color:#667085;text-align:center;justify-content:center;align-items:center;gap:8px;width:min(100% - 40px,1440px);min-height:58px;margin:auto;font-size:12px;display:flex}.app-footer strong{color:#344054}.app-footer a,.login-footer a{color:var(--primary);font-weight:700}.app-footer a:hover,.login-footer a:hover{text-decoration:underline}.footer-dot{color:#d0d5dd}.login-page{background:radial-gradient(circle at 10% 10%,#2563eb1a,#0000 30%),radial-gradient(circle at 90% 90%,#3b82f614,#0000 30%),#f8fafc;place-items:center;min-height:100vh;padding:30px;display:grid}.login-shell{border:1px solid var(--border);background:#fffffff5;border-radius:20px;width:min(430px,100%);padding:36px 34px 24px;box-shadow:0 24px 70px #0f172a1a}.login-brand{text-align:center;margin-bottom:26px}.login-brand-mark{color:var(--primary);letter-spacing:.04em;text-transform:uppercase;margin-bottom:16px;font-size:14px;font-weight:800}.login-brand h1{color:#101828;letter-spacing:-.035em;margin:0 0 6px;font-size:28px}.login-brand p{color:#667085;margin:0}.login-form .field{margin-bottom:15px}.login-form .btn{min-height:44px;margin-top:6px}.login-footer{color:#98a2b3;text-align:center;border-top:1px solid #eaecf0;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:25px;padding-top:18px;font-size:11px;display:flex}.login{place-items:center;min-height:100vh;padding:20px;display:grid}.loading{color:#667085;place-items:center;min-height:100vh;font-weight:600;display:grid}@media (width<=1100px){.audit-filters,.geo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.header-top{gap:18px}.global-search{max-width:420px}}@media (width<=900px){.header-top{flex-wrap:wrap;align-items:flex-start;min-height:auto;padding:14px 0}.brand{align-items:center;min-height:42px;display:flex}.header-actions{flex:1;min-width:0}.global-search{max-width:none}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-row{grid-template-columns:auto 1fr .7fr auto}.member-row>.mono,.member-row>span:nth-of-type(2){display:none}.app-row{grid-template-columns:1fr auto}.app-row .row-actions{grid-column:2}.cards{grid-template-columns:1fr}}@media (width<=700px){.wrap,.header-top,.main-nav,.app-footer-inner{width:min(100% - 24px,1440px)}.wrap{padding:22px 0 36px}.header-top{grid-template-columns:1fr auto;gap:10px;display:grid}.brand{font-size:18px}.header-actions{display:contents}.global-search{grid-area:2/1/auto/-1;width:100%}.logout-btn{grid-area:1/2;min-width:auto}.main-nav{padding-bottom:2px}.main-nav a{padding:12px 11px}.page-title{flex-direction:column;gap:14px}.page-title>.btn{width:100%}.geo-grid,.form-grid,.audit-filters,.audit-summary-grid,.audit-change-values,.audit-value-list{grid-template-columns:1fr}.wide,.form-grid .full{grid-column:auto}.member-row{grid-template-columns:auto 1fr auto}.member-row>span{display:none}.app-row{grid-template-columns:1fr}.app-row .row-actions{grid-column:auto}.selection{flex-direction:column;align-items:flex-start}.dob-grid{grid-template-columns:1fr}.aadhaar-editor input{width:100%}.audit-filter-actions{grid-template-columns:1fr 1fr;display:grid}.audit-table-summary{flex-direction:column;align-items:flex-start;gap:5px}.audit-modal-backdrop{padding:10px}.audit-modal{border-radius:12px;padding:18px}.app-footer-inner{flex-direction:column;gap:2px;min-height:70px;padding:12px 0}.footer-dot{display:none}}@media (width<=480px){.login-page{padding:16px}.login-shell{border-radius:16px;padding:28px 20px 20px}.global-search{grid-template-columns:1fr auto;display:grid}.search-submit{padding:8px 12px}.card,.filter-card,.form-panel{border-radius:12px}.card,.form-panel{padding:16px}th,td{padding:12px 11px;font-size:13px}}.brand{letter-spacing:-.6px;color:#303030;white-space:nowrap;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;font-size:23px;font-weight:400;line-height:1}.search-icon{display:none}.global-search input{padding-left:14px}
