:root{--bg-dark:#0f1923;--bg-sidebar:#141e2b;--bg-content:#f3f6fb;--bg-card:#fff;--accent:#3b82f6;--accent-hover:#2563eb;--accent-glow:#3b82f626;--text-primary:#1e293b;--text-secondary:#64748b;--text-on-dark:#e2e8f0;--text-muted:#ffffff73;--border:#e2e8f0;--border-dark:#ffffff14;--success:#10b981;--error:#ef4444;--warning:#f59e0b;--radius:12px;--radius-sm:8px;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 12px 40px #0000001f;--font:"Inter", -apple-system, BlinkMacSystemFont, sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:var(--font);background:var(--bg-content);color:var(--text-primary);-webkit-font-smoothing:antialiased}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 0 0 var(--accent-glow)}50%{box-shadow:0 0 0 8px #0000}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#00000040}.app-shell{width:100vw;height:100vh;display:flex}.sidebar{background:var(--bg-sidebar);width:260px;min-width:260px;color:var(--text-on-dark);z-index:100;flex-direction:column;display:flex;position:relative}.sidebar-header{border-bottom:1px solid var(--border-dark);padding:24px 20px}.sidebar-header h2{letter-spacing:-.01em;color:#fff;font-size:15px;font-weight:700;line-height:1.3}.sidebar-header .user-badge{color:var(--text-muted);align-items:center;gap:6px;margin-top:6px;font-size:11px;display:flex}.sidebar-header .user-badge .dot{background:var(--success);border-radius:50%;width:6px;height:6px;display:inline-block}.sidebar-nav{flex:1;padding:12px 0;overflow:visible}.nav-item{position:relative}.nav-btn{text-align:left;width:100%;color:var(--text-muted);cursor:pointer;font-size:13.5px;font-weight:500;font-family:var(--font);background:0 0;border:none;align-items:center;gap:10px;padding:12px 20px;transition:all .2s;display:flex}.nav-btn svg{opacity:.5;flex-shrink:0;width:18px;height:18px;transition:opacity .2s}.nav-btn:hover{color:var(--text-on-dark);background:#ffffff0a}.nav-btn:hover svg{opacity:.8}.nav-btn.active{color:#fff;border-left:3px solid var(--accent);background:#3b82f61f;padding-left:17px}.nav-btn.active svg{opacity:1;color:var(--accent)}.nav-btn.disabled{cursor:default;opacity:.35}.nav-btn.disabled:hover{color:var(--text-muted);background:0 0}.nav-item-with-flyout{position:relative}.nav-item-with-flyout:after{content:"";z-index:199;width:12px;height:100%;position:absolute;top:0;right:-12px}.flyout-panel{background:var(--bg-sidebar);border:1px solid var(--border-dark);border-radius:0 var(--radius-sm) var(--radius-sm) 0;opacity:0;visibility:hidden;z-index:200;width:240px;padding:8px 0;transition:opacity .2s,visibility .2s,transform .25s cubic-bezier(.16,1,.3,1);position:absolute;top:0;left:100%;transform:translate(-8px);box-shadow:8px 4px 24px #0000004d}.nav-item-with-flyout:hover>.flyout-panel{opacity:1;visibility:visible;transform:translate(0)}.flyout-header{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:12px 16px 8px;font-size:10px;font-weight:700}.flyout-btn{text-align:left;width:100%;color:var(--text-on-dark);cursor:pointer;font-size:13px;font-weight:400;font-family:var(--font);background:0 0;border:none;align-items:center;gap:8px;padding:9px 16px;transition:all .15s;display:flex}.flyout-btn:hover{color:#fff;background:#3b82f61f}.flyout-btn.active{color:var(--accent);background:#3b82f62e;font-weight:600}.flyout-btn .flyout-dot{opacity:.4;background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.flyout-btn.active .flyout-dot{background:var(--accent);opacity:1}.sidebar-footer{border-top:1px solid var(--border-dark);flex-direction:column;gap:8px;padding:16px 20px;display:flex}.sidebar-footer .switch-btn{border:1px solid var(--border-dark);color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;font-size:12px;font-family:var(--font);background:0 0;padding:8px;transition:all .2s}.sidebar-footer .switch-btn:hover{color:var(--text-on-dark);border-color:#fff3}.sidebar-footer .logout-btn{color:var(--error);border-radius:var(--radius-sm);cursor:pointer;font-size:12px;font-weight:600;font-family:var(--font);background:#ef44441a;border:none;padding:8px;transition:all .2s}.sidebar-footer .logout-btn:hover{background:#ef444433}.content-area{flex-direction:column;flex:1;display:flex;overflow:hidden}.content-header{background:var(--bg-card);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 32px;display:flex}.content-header h1{color:var(--text-primary);letter-spacing:-.02em;font-size:20px;font-weight:700}.content-body{flex:1;padding:28px 32px;animation:.3s fadeIn;overflow-y:auto}.form-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:24px;padding:28px 32px;animation:.35s fadeIn}.form-card h2{color:var(--text-primary);border-bottom:2px solid var(--accent);margin-bottom:24px;padding-bottom:12px;font-size:18px;font-weight:700;display:inline-block}.form-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;max-width:720px;display:grid}.form-group label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:12.5px;font-weight:600;display:block}.form-group input,.form-group select{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;font-size:14px;font-family:var(--font);color:var(--text-primary);background:#fff;outline:none;padding:10px 14px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.form-group-inline{align-items:center;gap:8px;padding-top:8px;display:flex}.form-group-inline input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.form-group-inline label{color:var(--text-primary);text-transform:none;letter-spacing:0;cursor:pointer;margin:0;font-size:13.5px;font-weight:500}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;font-weight:600;font-family:var(--font);border:none;padding:11px 28px;transition:all .2s}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.btn-success{background:var(--success);color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font);border:none;padding:9px 20px;transition:all .2s}.btn-success:hover{filter:brightness(1.1);transform:translateY(-1px)}.table-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);animation:.4s fadeIn;overflow:hidden}.table-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 28px;display:flex}.table-header h3{color:var(--text-primary);font-size:16px;font-weight:700}.table-header .record-count{color:var(--text-secondary);background:var(--bg-content);border-radius:20px;margin-left:12px;padding:4px 10px;font-size:12px;font-weight:500}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:13.5px}.data-table thead th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);background:var(--bg-content);border-bottom:2px solid var(--border);white-space:nowrap;padding:12px 16px;font-size:11.5px;font-weight:700;position:sticky;top:0}.data-table tbody td{color:var(--text-primary);border-bottom:1px solid #f1f5f9;padding:11px 16px}.data-table tbody tr{transition:background .15s}.data-table tbody tr:hover{background:#f8faff}.data-table tbody tr:last-child td{border-bottom:none}.td-number{text-align:right;font-variant-numeric:tabular-nums;font-weight:500}.society-screen{background:linear-gradient(135deg,#0f1923 0%,#1a2e44 50%,#1e3a5f 100%);flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.society-screen:before{content:"";background:radial-gradient(circle,#3b82f614 0%,#0000 70%);border-radius:50%;width:600px;height:600px;position:absolute;top:-200px;right:-100px}.society-screen:after{content:"";background:radial-gradient(circle,#10b9810f 0%,#0000 70%);border-radius:50%;width:400px;height:400px;position:absolute;bottom:-100px;left:-50px}.society-card{z-index:1;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff0a;border:1px solid #ffffff14;border-radius:20px;width:440px;max-width:92vw;padding:48px 40px;animation:.5s fadeIn;position:relative}.society-card h2{text-align:center;color:#fff;letter-spacing:-.03em;margin-bottom:8px;font-size:24px;font-weight:800}.society-card .subtitle{text-align:center;color:#ffffff73;margin-bottom:32px;font-size:14px}.society-list{flex-direction:column;gap:10px;display:flex}.society-btn{border-radius:var(--radius-sm);text-align:left;color:#fff;cursor:pointer;font-size:14.5px;font-weight:600;font-family:var(--font);background:#ffffff0a;border:1px solid #ffffff14;align-items:center;gap:12px;padding:16px 18px;transition:all .25s;display:flex}.society-btn:hover{background:#3b82f61f;border-color:#3b82f64d;transform:translate(4px)}.society-btn .icon{width:36px;height:36px;color:var(--accent);background:#3b82f626;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:800;display:flex}.society-btn .sname{flex:1}.society-btn .arrow{color:#fff3;transition:color .2s}.society-btn:hover .arrow{color:var(--accent)}.login-screen{background:linear-gradient(135deg,#0f1923 0%,#1a2e44 50%,#1e3a5f 100%);flex:1;justify-content:center;align-items:center;display:flex}.login-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff0a;border:1px solid #ffffff14;border-radius:20px;width:400px;max-width:92vw;padding:44px 40px;animation:.4s fadeIn}.login-card .back-btn{color:#fff6;cursor:pointer;font-size:13px;font-family:var(--font);background:0 0;border:none;margin-bottom:24px;padding:0;font-weight:500;transition:color .2s}.login-card .back-btn:hover{color:var(--accent)}.login-card h2{color:#fff;margin-bottom:4px;font-size:22px;font-weight:700}.login-card .login-sub{color:#fff6;margin-bottom:32px;font-size:13.5px}.login-card .form-group label{color:#ffffff80}.login-card .form-group input{color:#fff;background:#ffffff0f;border-color:#ffffff1a}.login-card .form-group input:focus{border-color:var(--accent);background:#ffffff14}.login-card .form-group input::placeholder{color:#ffffff40}.login-card .btn-primary{width:100%;margin-top:8px;padding:13px}.loading-overlay{background:var(--bg-content);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:20px;display:flex}.spinner{border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:44px;height:44px;animation:.8s linear infinite spin}.loading-overlay h3{color:var(--text-primary);font-size:17px;font-weight:600}.loading-overlay p{color:var(--text-secondary);text-align:center;max-width:340px;font-size:13.5px;line-height:1.5}.placeholder-view{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.placeholder-view svg{opacity:.3;width:48px;height:48px}.placeholder-view p{font-size:15px;font-weight:500}@media (width<=768px){.sidebar{width:56px;min-width:56px}.sidebar-header h2,.sidebar-header .user-badge,.nav-btn span{display:none}.nav-btn{justify-content:center;padding:14px}.content-body{padding:20px 16px}.form-grid{grid-template-columns:1fr}}
