:root{--brand-50:#eef5ff;--brand-100:#d9e8ff;--brand-200:#bcd7ff;--brand-300:#8ec0ff;--brand-400:#599eff;--brand-500:#3478f6;--brand-600:#1d5beb;--brand-700:#1647d8;--brand-800:#183caf;--brand-900:#1a378a;--brand-950:#142354;--gray-25:#fcfcfd;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--gray-950:#020617;--success-light:rgba(16,185,129,0.12);--success:#10b981;--warning-light:rgba(245,158,11,0.12);--warning:#f59e0b;--error-light:rgba(239,68,68,0.12);--error:#ef4444;--surface-page:#ffffff;--surface-card:#ffffff;--surface-glass:rgba(255,255,255,0.85);--surface-elevated:#ffffff;--text-primary:var(--gray-900);--text-secondary:var(--gray-600);--text-muted:var(--gray-500);--text-inverse:#ffffff;--border:var(--gray-200);--border-hover:var(--gray-300);--border-focus:var(--brand-500);--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.05),0 2px 4px -2px rgba(0,0,0,0.05);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.05),0 4px 6px -4px rgba(0,0,0,0.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.05),0 8px 10px -6px rgba(0,0,0,0.05);--shadow-brand:0 8px 24px -4px rgba(29,91,235,0.25);--radius-sm:0.5rem;--radius-md:0.75rem;--radius-lg:1rem;--radius-xl:1.25rem;--radius-2xl:1.5rem;--radius-full:9999px;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono","Fira Code",monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:3.75rem;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--duration-fast:150ms;--duration-base:250ms;--duration-slow:400ms;--z-dropdown:100;--z-sticky:200;--z-navbar:1000;--z-modal:10000;--z-toast:3000}html.dark-mode{--surface-page:#0F172A;--surface-card:#111827;--surface-glass:rgba(15,23,42,0.85);--surface-elevated:#1F2937;--text-primary:#F9FAFB;--text-secondary:#CBD5E1;--text-muted:#94a3b8;--border:#374151;--border-hover:#4B5563;--primary:#2563EB;--primary-2:#1D4ED8;--bg:#0F172A;--surface:#111827;--text:#F9FAFB;--muted:#CBD5E1;--input-bg:#1F2937;--input-border:#4B5563;--gray-50:#111827;--gray-100:#1F2937;--gray-200:#374151;--gray-900:#F9FAFB}html.dark-mode .form-input,html.dark-mode .input{background-color:var(--input-bg);border-color:var(--input-border)}[data-theme=dark] .gallery-title,html.dark-mode .gallery-title{color:#F9FAFB!important}[data-theme=dark] .gallery-desc,html.dark-mode .gallery-desc{color:#CBD5E1!important}@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap");*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body,html{overflow-x:hidden}body{font-family:var(--font-sans);background-color:var(--surface-page);color:var(--text-primary);line-height:1.6;min-height:100vh}a{color:inherit;text-decoration:none;transition:color var(--duration-fast) var(--ease-in-out)}ol,ul{list-style:none}button{cursor:pointer;border:none;background:none;font:inherit;color:inherit}img{height:auto}img,svg{max-width:100%;display:block}::selection{background:var(--brand-500);color:white}:focus-visible{outline:2px solid var(--brand-500);outline-offset:2px;border-radius:var(--radius-sm)}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-8)}.section-padding{padding:var(--space-20) 0}.text-blue,.text-brand{color:var(--brand-400)}.text-green{color:var(--success)}.text-orange{color:var(--warning)}.text-muted{color:var(--text-muted)}.grid-2{grid-template-columns:repeat(2,1fr);grid-gap:var(--space-8)}.grid-2,.grid-3{display:grid;gap:var(--space-8)}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:var(--space-8)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--space-6);gap:var(--space-6)}.w-full{width:100%}.relative{position:relative}@media (max-width:992px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.container{padding:0 var(--space-6)}.section-padding{padding:var(--space-12) 0}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.navbar{position:fixed;top:0;left:0;width:100%;z-index:var(--z-navbar);border-bottom:1px solid var(--border);background:var(--surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.navbar .container,.navbar-container{display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);height:4.25rem;max-width:1200px;margin:0 auto;padding:0 var(--space-8);width:100%}.mobile-menu-toggle{display:none;background:none;border:none;color:var(--text-primary);cursor:pointer;padding:var(--space-2);align-items:center;justify-content:center}.mobile-menu-btn{display:none}.logo{gap:var(--space-3);font-size:var(--text-xl);font-weight:800;letter-spacing:-.03em;color:var(--text-primary);text-decoration:none;flex-shrink:0;margin-right:var(--space-4)}.logo,.logo-icon{display:flex;align-items:center}.logo-icon{width:2.25rem;height:2.25rem;background:linear-gradient(135deg,var(--brand-500),var(--brand-700));border-radius:var(--radius-md);justify-content:center;box-shadow:var(--shadow-brand)}@media (min-width:992px){.mobile-theme-toggle{display:none!important}}.nav-links{display:flex;align-items:center;gap:var(--space-5)}.nav-link{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);transition:color var(--duration-fast) var(--ease-in-out);position:relative;white-space:nowrap}.nav-link.active,.nav-link:hover{color:var(--text-primary)}.nav-link.active:after{content:"";position:absolute;bottom:-1.35rem;left:0;right:0;height:2px;background:var(--brand-500);border-radius:1px}.nav-actions{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.lang-selector-wrapper{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:8px;padding:6px 12px;background:var(--surface-glass,rgba(255,255,255,.8));cursor:pointer;position:relative;min-height:44px;min-width:170px;box-sizing:border-box;transition:border-color .2s ease}.lang-selector-wrapper:hover{border-color:var(--brand-400,#60a5fa)}.lang-selector-wrapper .lang-text{font-size:.85rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px;flex:1 1}.lang-selector-wrapper select.lang-select{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}[data-theme=dark] .lang-selector-wrapper,html.dark-mode .lang-selector-wrapper{background:#1e293b!important;border-color:#334155!important}[data-theme=dark] .lang-selector-wrapper:hover,html.dark-mode .lang-selector-wrapper:hover{background:#2a3345!important}[data-theme=dark] .lang-selector-wrapper .lang-text,html.dark-mode .lang-selector-wrapper .lang-text{color:#ffffff!important}[data-theme=dark] .lang-selector-wrapper i,[data-theme=dark] .lang-selector-wrapper svg,html.dark-mode .lang-selector-wrapper i,html.dark-mode .lang-selector-wrapper svg{color:#e5e7eb!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-weight:600;font-size:var(--text-sm);line-height:1.4;transition:all var(--duration-base) var(--ease-out);white-space:nowrap;cursor:pointer}.btn-primary{background:linear-gradient(135deg,var(--brand-500),var(--brand-600));color:white;box-shadow:var(--shadow-brand);border:1px solid rgba(255,255,255,.1)}.btn-primary:hover{background:linear-gradient(135deg,var(--brand-400),var(--brand-500));box-shadow:0 12px 28px -6px rgba(29,91,235,.45);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--surface-glass);border:1px solid var(--border);color:var(--text-primary)}.btn-secondary:hover{background:var(--gray-50);border-color:var(--border-hover)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base);border-radius:var(--radius-lg)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}.card{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-8);transition:all var(--duration-base) var(--ease-out)}.card:hover{border-color:var(--border-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.glass-panel{background:var(--surface-elevated);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl)}.card-icon{width:3rem;height:3rem;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-5)}.card-icon i{width:1.25rem;height:1.25rem}.bg-blue{background:rgba(52,120,246,.12);color:var(--brand-400)}.bg-green{background:var(--success-light);color:var(--success)}.bg-orange{background:var(--warning-light);color:var(--warning)}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;line-height:1.4}.badge.success{background:var(--success-light);color:var(--success)}.badge.warning{background:var(--warning-light);color:var(--warning)}.badge.error{background:var(--error-light);color:var(--error)}.badge.info{background:rgba(52,120,246,.1);color:var(--brand-600)}.badge.neutral{background:var(--gray-100);color:var(--gray-600)}.badge.pending{background:var(--warning-light);color:var(--warning)}.mobile-menu-header,.nav-link-icon{display:none}.nav-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:998;opacity:0;pointer-events:none;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.nav-backdrop.active{opacity:1;pointer-events:auto}@media (max-width:768px){.nav-links{display:flex!important;flex-direction:column;position:fixed;top:0;left:0;width:280px;height:100vh;background:var(--surface-card)!important;border-right:1px solid var(--border);padding:24px;gap:1.5rem;align-items:flex-start;z-index:1000;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:none;margin:0;list-style:none}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}.mobile-menu-header img{height:40px;width:auto;object-fit:contain}.mobile-menu-header .close-menu{background:none;border:none;font-size:24px;color:var(--text-primary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center}.nav-link-icon{display:inline-block;margin-right:12px;font-size:1.1rem}.nav-links.active{transform:translateX(0);box-shadow:4px 0 24px rgba(0,0,0,.15)}.nav-links li{width:100%}.nav-links .nav-link{display:block;width:100%;font-size:1.1rem;font-weight:600;padding:10px 0;color:var(--text-primary);border-bottom:1px solid var(--border);transition:color .2s;text-align:left}.nav-links .nav-link:hover{color:var(--brand-500)}.navbar{background:var(--surface-card)!important;border-bottom:1px solid #e5e7eb!important;min-height:60px;max-height:70px;position:fixed;top:0;left:0;width:100%;display:flex;flex-direction:column;justify-content:center}.navbar-container{flex-wrap:nowrap;width:100%;justify-content:space-between;padding:8px 12px;height:auto}.logo,.navbar-container{display:flex;align-items:center;gap:6px}.logo{flex:1 1;overflow:hidden;min-width:0}.logo img{width:40px!important;height:40px!important;object-fit:contain!important;transform:none!important;flex-shrink:0}.logo span{font-size:16px!important;font-weight:700!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary)}.desktop-theme-toggle{display:none!important}.nav-actions{display:contents}.theme-toggle-btn{order:2;margin:0!important;min-height:36px!important;min-width:36px!important;padding:0}.lang-selector-wrapper,.theme-toggle-btn{display:flex;align-items:center;justify-content:center}.lang-selector-wrapper{order:3;margin:0;padding:4px 8px!important;min-height:44px!important;min-width:44px!important;box-sizing:border-box}.lang-selector-wrapper .lang-text,.lang-selector-wrapper svg:nth-of-type(2){display:none!important}.mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;order:4;padding:0;margin:0;position:relative;z-index:1001}.nav-actions .btn,.nav-actions .nav-link{display:none}.title-selector-container{flex-direction:column!important;align-items:stretch!important;width:100%!important;gap:.75rem!important}#btn-download-pdf,#btn-export-statement,.tenant-select,.tenant-selector-wrapper{width:100%!important;min-width:100%!important}.ledger-filter-bar{flex-direction:column!important;align-items:stretch!important;gap:.75rem!important}.ledger-filter-bar .filter-group{width:100%!important;min-width:100%!important}.ledger-filter-bar input,.ledger-filter-bar select{width:100%!important;padding-left:2.25rem!important}.ledger-filter-bar #btn-reset-filters{width:100%!important;justify-content:center!important}.ledger-layout-grid{grid-template-columns:1fr!important}#ledger-table-body tr td:nth-child(5):before{content:"Debit (₹)";font-weight:600;color:var(--text-muted)}#ledger-table-body tr td:nth-child(6):before{content:"Credit (₹)";font-weight:600;color:var(--text-muted)}#ledger-table-body tr td:nth-child(7):before{content:"Balance (₹)";font-weight:600;color:var(--text-muted)}#ledger-table-body tr td:nth-child(8):before{content:"Receipt / Ref";font-weight:600;color:var(--text-muted)}.tenant-profile-card{padding:1rem!important;gap:1.25rem!important}.profile-left{width:100%!important;min-width:100%!important}.profile-right-grid{width:100%!important;padding-left:0!important;border-left:none!important;grid-template-columns:1fr 1fr!important;gap:1rem!important}.overview-cards-row{grid-template-columns:repeat(2,1fr)!important;gap:.75rem!important}.overview-card{padding:.75rem!important;gap:.5rem!important}.card-icon-circle{width:36px!important;height:36px!important}.card-value{font-size:1.1rem!important}}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000!important;opacity:0;pointer-events:none;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.modal-overlay.active{opacity:1;pointer-events:auto;visibility:visible}.modal-dialog{background:var(--surface-card);border-radius:var(--radius-md);width:90%;max-width:500px;box-shadow:0 20px 60px rgba(0,0,0,.15);transform:translateY(10px);transition:transform .25s ease;max-height:85vh;overflow-y:auto}.modal-overlay.active .modal-dialog{transform:translateY(0)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.modal-header h3{font-size:1.1rem;margin:0}.modal-close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);line-height:1;padding:0;transition:color .15s}.modal-close-btn:hover{color:var(--text-primary)}.modal-body{padding:var(--space-4) var(--space-5)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border)}.form-group{margin-bottom:var(--space-4)}.form-label{display:block;font-weight:500;margin-bottom:.375rem}.form-input,.form-label{font-size:.875rem;color:var(--text-primary)}.form-input{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;transition:border-color .15s,box-shadow .15s;background:var(--surface-card)}.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(59,130,246,.1)}select.form-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236b7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.25rem}.modal-dialog-xl{background:var(--surface-card);border-radius:20px;width:95%;max-width:1150px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);transform:translateY(10px);transition:transform .25s ease;max-height:90vh;overflow-y:auto;overflow-x:hidden}.modal-overlay.active .modal-dialog-xl{transform:translateY(0)}.premium-stat-card{padding:var(--space-5);flex:1 1}.method-card,.premium-stat-card{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-lg)}.method-card{padding:var(--space-4);text-align:center;cursor:pointer;transition:all var(--duration-fast)}.method-card:hover{border-color:var(--brand-300);background:var(--brand-50)}.method-card.selected{border-color:var(--brand-500);background:var(--brand-50);box-shadow:0 0 0 2px var(--brand-100)}.method-icon{width:32px;height:32px;margin:0 auto .5rem;color:var(--text-muted)}.method-card.selected .method-icon{color:var(--brand-600)}.amount-input-wrapper{position:relative;display:flex;align-items:center}.amount-currency{position:absolute;left:1rem;font-size:1.5rem;font-weight:600;color:var(--text-muted)}.amount-input-large{width:100%;padding:1rem 1rem 1rem 2.5rem;font-size:1.5rem;font-weight:700;border:2px solid var(--border);border-radius:var(--radius-lg);transition:all .2s;background:var(--surface-card);color:var(--text-primary)}.amount-input-large:focus{border-color:var(--brand-500);box-shadow:0 0 0 4px var(--brand-100);outline:none}.amount-input-large::-webkit-inner-spin-button,.amount-input-large::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.amount-input-large[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.quick-action-btn{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius-full);padding:.35rem .75rem;font-size:.85rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s}.quick-action-btn:hover{background:var(--gray-100);color:var(--text-primary)}.status-card-large{border-radius:var(--radius-lg);padding:var(--space-4);text-align:center;border:1px solid var(--border);transition:all .3s;font-weight:700;font-size:1.25rem}.status-card-large.paid{background:var(--success-light);border-color:var(--success);color:var(--success)}.status-card-large.partial{background:var(--warning-light);border-color:var(--warning);color:var(--warning)}.status-card-large.unpaid{background:var(--error-light);border-color:var(--error);color:var(--error)}.sticky-footer{position:-webkit-sticky;position:sticky;bottom:0;background:var(--surface-card);border-top:1px solid var(--border);padding:var(--space-4) var(--space-6);display:flex;justify-content:space-between;align-items:center;z-index:10}@media (max-width:768px){.form-group,.modal-body,form{width:100%!important}.grid,.grid-2,.grid-3,.grid-4,.modal-grid-2col{grid-template-columns:1fr!important;gap:1rem!important}.form-actions,.modal-footer,.sticky-footer{flex-direction:column!important;width:100%!important;gap:.75rem!important;align-items:stretch!important}.form-actions .btn,.form-actions button,.modal-footer .btn,.modal-footer button,.sticky-footer .btn,.sticky-footer button{width:100%!important;margin-left:0!important}.btn{white-space:normal!important;text-align:center!important}.hero-cta{flex-direction:column!important;align-items:stretch!important;max-width:400px;margin:0 auto;gap:1rem!important}.flex.gap-4,.hero-cta,.hero-cta .btn{width:100%!important}.flex.gap-4{flex-direction:column!important;align-items:stretch!important;gap:1rem!important}.flex.gap-4 .btn{width:100%!important;margin-left:0!important}.ledger-modal .modal-content,.modal-content,.modal-dialog,.modal-dialog-saas,.modal-dialog-xl{width:95vw!important;max-width:95vw!important;max-height:90vh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}.modal-body,.modal-body-scrollable{flex:1 1!important;overflow-y:auto!important;max-height:calc(90vh - 120px)!important}#dataTable,#invoicesTable,#logsTable,#ownersTable,#subscriptionsTable,.ag-table,.data-table,.ledger-table,.properties-table,.rent-collection-table,.table-card table,.table-container table,.tenants-table{display:block!important;width:100%!important;border:none!important;min-width:0!important}#dataTable thead,#invoicesTable thead,#logsTable thead,#ownersTable thead,#subscriptionsTable thead,.ag-table thead,.data-table thead,.ledger-table thead,.properties-table thead,.rent-collection-table thead,.table-card thead,.table-container thead,.tenants-table thead{display:none!important}#dataTable tbody,#invoicesTable tbody,#logsTable tbody,#ownersTable tbody,#subscriptionsTable tbody,.ag-table tbody,.data-table tbody,.ledger-table tbody,.properties-table tbody,.rent-collection-table tbody,.table-card tbody,.table-container tbody,.tenants-table tbody{display:block!important;width:100%!important}#dataTable tr,#invoicesTable tr,#logsTable tr,#ownersTable tr,#subscriptionsTable tr,.ag-table tr,.data-table tr,.ledger-table tr,.properties-table tr,.rent-collection-table tr,.table-card tr,.table-container tr,.tenants-table tr{display:block!important;background:var(--surface-card)!important;border:1px solid var(--border)!important;border-radius:var(--radius-lg)!important;margin-bottom:1rem!important;padding:1rem!important;box-shadow:var(--shadow-sm)!important}#dataTable td,#invoicesTable td,#logsTable td,#ownersTable td,#subscriptionsTable td,.ag-table td,.data-table td,.ledger-table td,.properties-table td,.rent-collection-table td,.table-card td,.table-container td,.tenants-table td{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:.5rem 0!important;border:none!important;border-bottom:1px solid var(--gray-100)!important;text-align:right!important;font-size:var(--text-sm)!important;width:100%!important}#dataTable td:last-child,#invoicesTable td:last-child,#logsTable td:last-child,#ownersTable td:last-child,#subscriptionsTable td:last-child,.ag-table td:last-child,.data-table td:last-child,.ledger-table td:last-child,.properties-table td:last-child,.rent-collection-table td:last-child,.table-card td:last-child,.table-container td:last-child,.tenants-table td:last-child{border-bottom:none!important}#recent-payments-body tr td:first-child:before{content:"Tenant";font-weight:600;color:var(--text-muted)}#recent-payments-body tr td:nth-child(2):before{content:"Property";font-weight:600;color:var(--text-muted)}#recent-payments-body tr td:nth-child(3):before{content:"Amount";font-weight:600;color:var(--text-muted)}#recent-payments-body tr td:nth-child(4):before{content:"Status";font-weight:600;color:var(--text-muted)}#ledger-table-body tr td:first-child:before,#recent-payments-body tr td:nth-child(5):before{content:"Date";font-weight:600;color:var(--text-muted)}#ledger-table-body tr td:nth-child(2):before{content:"Description";font-weight:600;color:var(--text-muted)}#ledger-table-body tr td:nth-child(3):before{content:"Type";font-weight:600;color:var(--text-muted)}#ledger-table-body tr td:nth-child(4):before{content:"Method";font-weight:600;color:var(--text-muted)}#ledger-table-body tr td:nth-child(5):before{content:"Debit (₹)";font-weight:600;color:var(--text-muted)}#ledger-table-body tr td:nth-child(6):before{content:"Credit (₹)";font-weight:600;color:var(--text-muted)}#ledger-table-body tr td:nth-child(7):before{content:"Balance (₹)";font-weight:600;color:var(--text-muted)}#ledger-table-body tr td:nth-child(8):before{content:"Receipt / Ref";font-weight:600;color:var(--text-muted)}.tenants-table tbody tr td:first-child:before{content:"Name";font-weight:600;color:var(--text-muted)}.tenants-table tbody tr td:nth-child(2):before{content:"Contact";font-weight:600;color:var(--text-muted)}.tenants-table tbody tr td:nth-child(3):before{content:"Room";font-weight:600;color:var(--text-muted)}.tenants-table tbody tr td:nth-child(4):before{content:"Rent";font-weight:600;color:var(--text-muted)}.tenants-table tbody tr td:nth-child(5):before{content:"Status";font-weight:600;color:var(--text-muted)}.tenants-table tbody tr td:nth-child(6):before{content:"Actions";font-weight:600;color:var(--text-muted)}.properties-table tbody tr td:first-child:before{content:"Property Name";font-weight:600;color:var(--text-muted)}.properties-table tbody tr td:nth-child(2):before{content:"Type";font-weight:600;color:var(--text-muted)}.properties-table tbody tr td:nth-child(3):before{content:"Location";font-weight:600;color:var(--text-muted)}.properties-table tbody tr td:nth-child(4):before{content:"Units";font-weight:600;color:var(--text-muted)}.properties-table tbody tr td:nth-child(5):before{content:"Occupied";font-weight:600;color:var(--text-muted)}.properties-table tbody tr td:nth-child(6):before{content:"Status";font-weight:600;color:var(--text-muted)}.properties-table tbody tr td:nth-child(7):before{content:"Actions";font-weight:600;color:var(--text-muted)}.rent-collection-table tbody tr td:first-child:before{content:"Tenant";font-weight:600;color:var(--text-muted)}.rent-collection-table tbody tr td:nth-child(2):before{content:"Property & Room";font-weight:600;color:var(--text-muted)}.rent-collection-table tbody tr td:nth-child(3):before{content:"Period";font-weight:600;color:var(--text-muted)}.rent-collection-table tbody tr td:nth-child(4):before{content:"Expected";font-weight:600;color:var(--text-muted)}.rent-collection-table tbody tr td:nth-child(5):before{content:"Paid";font-weight:600;color:var(--text-muted)}.rent-collection-table tbody tr td:nth-child(6):before{content:"Method";font-weight:600;color:var(--text-muted)}.rent-collection-table tbody tr td:nth-child(7):before{content:"Status";font-weight:600;color:var(--text-muted)}.rent-collection-table tbody tr td:nth-child(8):before{content:"Actions";font-weight:600;color:var(--text-muted)}#complaints-tbody tr td:first-child:before{content:"ID";font-weight:600;color:var(--text-muted)}#complaints-tbody tr td:nth-child(2):before{content:"Tenant";font-weight:600;color:var(--text-muted)}#complaints-tbody tr td:nth-child(3):before{content:"Room";font-weight:600;color:var(--text-muted)}#complaints-tbody tr td:nth-child(4):before{content:"Property";font-weight:600;color:var(--text-muted)}#complaints-tbody tr td:nth-child(5):before{content:"Issue";font-weight:600;color:var(--text-muted)}#complaints-tbody tr td:nth-child(6):before{content:"Category";font-weight:600;color:var(--text-muted)}#complaints-tbody tr td:nth-child(7):before{content:"Priority";font-weight:600;color:var(--text-muted)}#complaints-tbody tr td:nth-child(8):before{content:"Status";font-weight:600;color:var(--text-muted)}#complaints-tbody tr td:nth-child(9):before{content:"Assigned To";font-weight:600;color:var(--text-muted)}#complaints-tbody tr td:nth-child(10):before{content:"Created On";font-weight:600;color:var(--text-muted)}#complaints-tbody tr td:nth-child(11):before{content:"Actions";font-weight:600;color:var(--text-muted)}#rent-history-table tr td:first-child:before{content:"Month";font-weight:600;color:var(--text-muted)}#rent-history-table tr td:nth-child(2):before{content:"Amount";font-weight:600;color:var(--text-muted)}#rent-history-table tr td:nth-child(3):before{content:"Status";font-weight:600;color:var(--text-muted)}#rent-history-table tr td:nth-child(4):before{content:"Payment Date";font-weight:600;color:var(--text-muted)}#rent-history-table tr td:nth-child(5):before{content:"Receipt";font-weight:600;color:var(--text-muted)}.ag-table tbody tr td:first-child:before{content:"Agreement ID";font-weight:600;color:var(--text-muted)}.ag-table tbody tr td:nth-child(2):before{content:"Tenant";font-weight:600;color:var(--text-muted)}.ag-table tbody tr td:nth-child(3):before{content:"Property";font-weight:600;color:var(--text-muted)}.ag-table tbody tr td:nth-child(4):before{content:"Status";font-weight:600;color:var(--text-muted)}.ag-table tbody tr td:nth-child(5):before{content:"Start Date";font-weight:600;color:var(--text-muted)}.ag-table tbody tr td:nth-child(6):before{content:"Actions";font-weight:600;color:var(--text-muted)}#staff-table-body tr td:first-child:before{content:"Staff Member";font-weight:600;color:var(--text-muted)}#staff-table-body tr td:nth-child(2):before{content:"Role";font-weight:600;color:var(--text-muted)}#staff-table-body tr td:nth-child(3):before{content:"Assigned Properties";font-weight:600;color:var(--text-muted)}#staff-table-body tr td:nth-child(4):before{content:"Phone";font-weight:600;color:var(--text-muted)}#staff-table-body tr td:nth-child(5):before{content:"Status";font-weight:600;color:var(--text-muted)}#staff-table-body tr td:nth-child(6):before{content:"Actions";font-weight:600;color:var(--text-muted)}#tasksTableBody tr td:first-child:before{content:"Task";font-weight:600;color:var(--text-muted)}#tasksTableBody tr td:nth-child(2):before{content:"Property";font-weight:600;color:var(--text-muted)}#tasksTableBody tr td:nth-child(3):before{content:"Vendor";font-weight:600;color:var(--text-muted)}#tasksTableBody tr td:nth-child(4):before{content:"Estimated Cost";font-weight:600;color:var(--text-muted)}#tasksTableBody tr td:nth-child(5):before{content:"Actual Cost";font-weight:600;color:var(--text-muted)}#tasksTableBody tr td:nth-child(6):before{content:"Priority";font-weight:600;color:var(--text-muted)}#tasksTableBody tr td:nth-child(7):before{content:"Status";font-weight:600;color:var(--text-muted)}#tasksTableBody tr td:nth-child(8):before{content:"Payment";font-weight:600;color:var(--text-muted)}#tasksTableBody tr td:nth-child(9):before{content:"Payment Summary";font-weight:600;color:var(--text-muted)}#tasksTableBody tr td:nth-child(10):before{content:"Due Date";font-weight:600;color:var(--text-muted)}#tasksTableBody tr td:nth-child(11):before{content:"Actions";font-weight:600;color:var(--text-muted)}header.dashboard-header.ledger-dashboard-header .breadcrumb{display:none!important}.title-selector-container{flex-direction:column!important;align-items:stretch!important;width:100%!important;gap:.75rem!important}#btn-download-pdf,#btn-export-statement,.tenant-select,.tenant-selector-wrapper{width:100%!important;min-width:100%!important}.ledger-filter-bar{flex-direction:column!important;align-items:stretch!important;gap:.75rem!important}.ledger-filter-bar .filter-group{width:100%!important;min-width:100%!important}.ledger-filter-bar input,.ledger-filter-bar select{width:100%!important;padding-left:2.25rem!important}.ledger-filter-bar #btn-reset-filters{width:100%!important;justify-content:center!important}.ledger-layout-grid{grid-template-columns:1fr!important}.tenant-profile-card{padding:1rem!important;gap:1.25rem!important}.profile-left{width:100%!important;min-width:100%!important}.profile-right-grid{width:100%!important;padding-left:0!important;border-left:none!important;grid-template-columns:1fr 1fr!important;gap:1rem!important}.overview-cards-row{grid-template-columns:repeat(2,1fr)!important;gap:.75rem!important}.overview-card{padding:.75rem!important;gap:.5rem!important}.card-icon-circle{width:36px!important;height:36px!important}.card-value{font-size:1.1rem!important}.ledger-table-footer{gap:.75rem!important}.ledger-table-footer,.receipt-footer{flex-direction:column!important;align-items:center!important;text-align:center!important}.receipt-footer{gap:1.5rem!important}.receipt-footer p{max-width:100%!important;text-align:center!important}.signature-line{width:100%!important;max-width:240px!important}}.hero{position:relative;min-height:100vh;display:flex;align-items:center;background:var(--surface-card);overflow:hidden;padding-top:4.25rem}.hero-canvas{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}.hero-overlay{position:absolute;inset:0;background:rgba(255,255,255,.4);z-index:1}.hero .container{position:relative;z-index:2}.hero-content{max-width:800px;margin:0 auto;text-align:center;padding:var(--space-20) 0}.hero-title{font-size:clamp(var(--text-4xl),6vw,var(--text-6xl));font-weight:900;line-height:1.08;letter-spacing:-.03em;margin-bottom:var(--space-6);color:var(--gray-900)}.hero-title .text-blue{background:linear-gradient(135deg,var(--brand-500),var(--brand-700));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-description{font-size:var(--text-lg);color:var(--text-secondary);margin-bottom:var(--space-10);max-width:600px;margin-left:auto;margin-right:auto;line-height:1.7}[data-theme=dark] .hero-description,html.dark-mode .hero-description{color:var(--text-inverse,#ffffff)}.hero-cta{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}.section-header{text-align:center;margin-bottom:var(--space-16)}.section-header h1,.section-header h2{font-size:var(--text-5xl);font-weight:800;letter-spacing:-.02em;margin-bottom:var(--space-4)}.section-header p{color:var(--text-secondary);font-size:var(--text-lg);max-width:700px;margin:0 auto}.card h3{font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-2);letter-spacing:-.01em}.card p{color:var(--text-secondary);font-size:var(--text-sm);line-height:1.7}.footer{padding:var(--space-8) 0;border-top:1px solid var(--border);background:var(--surface-page)}.footer-bottom{text-align:center;padding-top:1rem;border-top:1px solid var(--border,rgba(255,255,255,.1));opacity:.8;font-size:.95rem}.footer-credit{background:linear-gradient(90deg,#FF6B35,#138808 33%,#0066CC 66%,#19AAED);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:600;display:inline-block;animation:gradientShift 10s ease infinite;background-size:300% 300%}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.footer-section{padding:var(--space-16) 0 var(--space-8) 0;border-top:1px solid var(--border);background:var(--surface-page)}.footer-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:var(--space-8);gap:var(--space-8)}.footer-col{grid-column:span 3}@media (max-width:768px){.hero-cta{flex-direction:column;align-items:center}.hero-content{padding:var(--space-12) 0}.hero-canvas{transform:none!important}#footer-placeholder,.footer,.footer-section{text-align:center!important;padding:var(--space-12) 0 var(--space-6) 0!important}#footer-placeholder .grid,.footer .grid,.footer-grid{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;gap:var(--space-8)!important}#footer-placeholder .col-12,#footer-placeholder [class*=" col-"],#footer-placeholder [class^=col-],.footer .col-12,.footer [class*=" col-"],.footer [class^=col-],.footer-col{text-align:center!important;display:flex!important;flex-direction:column!important;align-items:center!important;margin-bottom:0!important;width:100%!important}#footer-placeholder ul,.footer ul,.footer-col ul{padding:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:var(--space-2)!important}#footer-placeholder p,.footer p,.footer-col p{text-align:center!important;max-width:300px;margin-left:auto;margin-right:auto}.footer-bottom{margin-top:var(--space-6)!important;padding-top:var(--space-6)!important;width:100%!important}.footer-credit{font-size:.85rem!important;line-height:1.4!important}}html:has(.dashboard-layout),html:has(.dashboard-layout) body{height:100vh!important;margin:0!important;padding:0!important;overflow:hidden!important;max-width:100%!important}.dashboard-layout{width:100%!important;max-width:100%!important;overflow:hidden!important;background:var(--surface-page)!important}.dashboard-layout,.sidebar{display:flex!important;height:100vh!important}.sidebar{width:280px!important;position:fixed!important;top:0!important;left:0!important;bottom:0!important;z-index:9999!important;flex-direction:column!important;background:var(--surface-card)!important;border-right:1px solid var(--border)!important}.sidebar-header{height:4.25rem;padding:0 var(--space-6);display:flex;align-items:center;border-bottom:1px solid var(--border);flex-shrink:0}.sidebar-nav{flex:1 1;padding:var(--space-4) var(--space-3);display:flex;flex-direction:column;gap:var(--space-1);overflow-y:auto;scrollbar-width:thin}.sidebar-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:12px!important;color:var(--text-secondary)!important;font-weight:500;font-size:14px!important;transition:all var(--duration-fast) var(--ease-in-out);text-decoration:none}.sidebar-link .sidebar-link-icon,.sidebar-link i,.sidebar-link svg{width:1.25rem;height:1.25rem;flex-shrink:0}.sidebar-link:hover{background:var(--surface-page)!important;color:var(--text-primary)!important}.sidebar-link.active{background:#eef5ff!important;font-weight:600}.sidebar-link.active,.sidebar-link.active .sidebar-link-icon{color:#2563eb!important}.sidebar-footer .sidebar-link .sidebar-logout-icon,.sidebar-footer .sidebar-link:hover .sidebar-logout-icon{color:#b91c1c!important}.sidebar-footer{padding:var(--space-4) var(--space-3);border-top:1px solid var(--border);flex-shrink:0}.sidebar-user-info{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);border-radius:12px}.sidebar-user-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--brand-500),var(--brand-700));color:#FFFFFF;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0;overflow:hidden}.sidebar-user-details{display:flex;flex-direction:column;overflow:hidden}.sidebar-user-name{font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.sidebar-user-role{font-size:11px;font-weight:500;color:var(--text-muted);line-height:1.2;margin-top:2px}html.dark-mode .sidebar-link:hover{background:rgba(255,255,255,.07);color:var(--text-primary)}html.dark-mode .sidebar-link.active{background:rgba(37,99,235,.18);color:var(--brand-400)}html.dark-mode .sidebar-link.active .sidebar-link-icon{color:var(--brand-400)!important}html.dark-mode .sidebar-footer .sidebar-link .sidebar-logout-icon{color:#f87171!important}.main-content{flex:1 1!important;margin-left:280px!important;width:calc(100% - 280px)!important;max-width:calc(100% - 280px)!important;height:100vh!important;flex-direction:column!important;overflow:hidden!important;background:var(--surface-page)!important;transition:margin-left .3s ease-in-out!important}.dashboard-header,.main-content{display:flex!important;min-width:0!important}.dashboard-header{height:4.25rem!important;min-height:4.25rem!important;max-width:100%!important;overflow:visible!important;background:var(--surface-glass)!important;-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important;border-bottom:1px solid var(--border)!important;align-items:center!important;justify-content:space-between!important;padding:0 var(--space-8)!important;position:relative!important;z-index:var(--z-sticky)!important;flex-shrink:0!important}.header-welcome{min-width:0!important;flex:1 1 auto!important;overflow:hidden!important}.header-actions{flex-shrink:0!important;overflow:visible!important;position:relative!important}.content-body,.header-actions{min-width:0!important;max-width:100%!important}.content-body{flex:1 1!important;overflow-x:hidden!important;overflow-y:auto!important;padding:var(--space-8)!important;box-sizing:border-box!important;width:100%!important}.bottom-nav{display:none}@media (max-width:768px){.sidebar{position:fixed!important;top:0!important;left:0!important;bottom:calc(56px + env(safe-area-inset-bottom, 0px))!important;width:280px!important;max-width:80vw!important;height:calc(100dvh - 56px - env(safe-area-inset-bottom, 0px))!important;transform:translateX(-100%)!important;transition:transform .28s cubic-bezier(.4,0,.2,1)!important;box-shadow:var(--shadow-xl)!important;z-index:10001!important;display:flex!important;flex-direction:column!important;background:var(--surface-card)!important}.sidebar.open{transform:translateX(0)!important}.sidebar-header{display:flex!important;align-items:center!important;height:64px!important;padding:0 16px!important;border-bottom:1px solid var(--border)!important;flex-shrink:0!important}.sidebar-nav{flex:1 1!important;padding:16px 12px!important;gap:6px!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}.sidebar-footer{padding:16px 12px!important;border-top:1px solid var(--border)!important;flex-shrink:0!important;margin-top:auto!important;background:var(--surface-card)!important}.dashboard-layout,.main-content{height:100%!important;height:100dvh!important;width:100%!important;overflow:hidden!important}.main-content{margin-left:0!important;max-width:100%!important;display:flex!important;flex-direction:column!important}.content-body,.main-content{box-sizing:border-box!important}.content-body{flex:1 1!important;padding:16px 16px calc(88px + env(safe-area-inset-bottom, 0px))!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important}.sidebar-overlay{visibility:hidden!important;opacity:0!important;position:fixed!important;top:0!important;left:0!important;width:100vw!important;bottom:calc(56px + env(safe-area-inset-bottom, 0px))!important;height:calc(100dvh - 56px - env(safe-area-inset-bottom, 0px))!important;background:rgba(15,23,42,.5)!important;-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important;z-index:10000!important;transition:opacity .28s ease-in-out,visibility .28s ease-in-out!important;display:block!important}.sidebar-overlay.active{visibility:visible!important;opacity:1!important}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:calc(64px + env(safe-area-inset-bottom, 0px));background:#ffffff;border-top:1px solid #e5e7eb;box-shadow:0 -6px 20px rgba(0,0,0,.08);z-index:9997;justify-content:space-around;padding-bottom:env(safe-area-inset-bottom,0);box-sizing:border-box}.bottom-nav,.bottom-nav-item{display:flex;align-items:center}.bottom-nav-item{flex-direction:column;justify-content:center;color:#6b7280;text-decoration:none;font-size:10px;font-weight:500;flex:1 1;height:100%;gap:4px;transition:all .25s ease;position:relative;min-height:48px;white-space:nowrap;background:transparent;border:none;cursor:pointer;font:inherit}.bottom-nav-item:first-child{--tab-color:#2563eb}.bottom-nav-item:nth-child(2){--tab-color:#10b981}.bottom-nav-item:nth-child(3){--tab-color:#f59e0b}.bottom-nav-item:nth-child(4){--tab-color:#ef4444}.bottom-nav-item svg{width:24px;height:24px;color:var(--tab-color);opacity:.8;transition:transform .2s ease,opacity .25s ease}.bottom-nav-item:nth-child(3) svg{background:rgba(245,158,11,.1);border-radius:50%;padding:4px;box-sizing:content-box;opacity:1}.bottom-nav-item:active svg{transform:scale(.9)}.bottom-nav-item.active{color:var(--tab-color);font-weight:700}.bottom-nav-item.active svg{opacity:1}.bottom-nav-item.active:after{content:"";position:absolute;top:6px;width:48px;height:32px;background:var(--tab-color);opacity:.08;border-radius:16px;z-index:-1;transition:all .25s ease}}html.dark-mode .bottom-nav{background:var(--surface-card);border-top-color:var(--border)}.auth-page{display:flex;justify-content:center;min-height:100vh;padding:24px 16px;background:radial-gradient(ellipse 80% 60% at 20% 40%,rgba(52,120,246,.08),transparent 60%),radial-gradient(ellipse 60% 40% at 80% 80%,rgba(20,35,84,.05),transparent 60%),var(--brand-50)}.auth-container{width:100%;max-width:440px;margin:auto}.auth-card{padding:24px}.auth-header{text-align:center;margin-bottom:var(--space-4)}.auth-header .logo{justify-content:center;margin-bottom:var(--space-3)}.auth-header h1{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:var(--space-1)}.auth-header p{color:var(--text-secondary);font-size:var(--text-sm)}.auth-form{gap:4px}.auth-form,.form-group{display:flex;flex-direction:column}.form-group{gap:0}.form-group label{font-size:var(--text-sm);font-weight:500;color:var(--gray-300)}.input-wrapper{position:relative;display:flex;align-items:center}.input-wrapper svg{position:absolute;left:var(--space-4);width:1.125rem;height:1.125rem;color:var(--text-muted);pointer-events:none}.input-wrapper input{width:100%;padding:8px 12px 8px 36px;background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-sm);font-family:var(--font-sans);transition:all var(--duration-fast) var(--ease-in-out)}.input-wrapper input::placeholder{color:var(--text-muted)}.input-wrapper input:focus{outline:none;border-color:var(--brand-500);background:var(--surface-card);box-shadow:0 0 0 3px rgba(52,120,246,.15)}.auth-options{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-sm)}.forgot-link{color:var(--brand-400);font-weight:500}.forgot-link:hover{color:var(--brand-300)}.auth-footer{margin-top:var(--space-6);text-align:center;font-size:var(--text-sm);color:var(--text-secondary)}.auth-footer a{color:var(--brand-400);font-weight:600}.auth-footer a:hover{color:var(--brand-300)}.checkbox-container{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:var(--text-sm);color:var(--text-secondary)}.checkbox-container a{color:var(--brand-400)}.btn-google{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);background:var(--surface-card);color:#1f1f1f;border:1px solid var(--gray-200);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--duration-fast) var(--ease-in-out)}.btn-google:hover{background:var(--gray-50);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-google:active{transform:translateY(0)}.btn-google svg{flex-shrink:0}.auth-divider{display:flex;align-items:center;gap:var(--space-4);margin:var(--space-6) 0}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:var(--border)}.auth-divider span{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.role-selector{display:flex;background:var(--gray-100);padding:var(--space-1);border-radius:var(--radius-lg);margin-bottom:var(--space-6);border:1px solid var(--border)}.role-btn{flex:1 1;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2.5) var(--space-4);background:transparent;border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all var(--duration-fast) var(--ease-in-out)}.role-btn svg{width:1rem;height:1rem;color:var(--text-muted);transition:color var(--duration-fast) var(--ease-in-out)}.role-btn.active{background:var(--surface-page);box-shadow:var(--shadow-sm)}.role-btn.active,.role-btn.active svg{color:var(--brand-600)}.role-btn:hover:not(.active){color:var(--text-primary)}.role-btn:hover:not(.active) svg{color:var(--text-secondary)}.input-wrapper input.password-input{padding-right:3rem!important}.password-toggle-btn{position:absolute;right:0;top:0;height:100%;width:2.75rem;min-width:40px;min-height:40px;display:flex;align-items:center;justify-content:center;background:none;border:none;padding:0;cursor:pointer;color:var(--text-muted);transition:color var(--duration-fast) var(--ease-in-out);z-index:10;outline:none;border-radius:0 var(--radius-md) var(--radius-md) 0}.password-toggle-btn:hover{color:var(--brand-500)}.password-toggle-btn:focus-visible{outline:2px solid var(--brand-400);outline-offset:-2px;border-radius:0 var(--radius-md) var(--radius-md) 0}.password-toggle-btn svg{position:static!important;width:1.125rem!important;height:1.125rem!important;pointer-events:none;flex-shrink:0;transition:color var(--duration-fast) var(--ease-in-out)}@media (max-width:768px){.auth-container{width:calc(100vw - 24px)!important;max-width:420px!important;margin:24px auto 0!important}.auth-page{padding:12px 6px!important;min-height:auto!important;display:flex!important;align-items:flex-start!important;justify-content:center!important}.auth-card{padding:28px 24px!important;border-radius:var(--radius-lg)!important;box-shadow:0 4px 16px rgba(0,0,0,.06)!important}.auth-header-top{display:flex!important;justify-content:center!important;align-items:center!important;width:100%!important;margin-bottom:12px!important;position:relative!important}.auth-header-top #theme-toggle-btn{position:absolute!important;right:0!important;top:50%!important;transform:translateY(-50%)!important}.auth-header .logo{justify-content:center!important;margin-bottom:0!important;width:auto!important;flex:initial!important}.auth-header .logo .logo-icon{width:26px!important;height:26px!important}.auth-header .logo .logo-icon i,.auth-header .logo .logo-icon svg{width:16px!important;height:16px!important}.auth-header .logo span{font-size:1.15rem!important}.auth-header{margin-bottom:16px!important;text-align:center!important}.auth-header h1{font-size:1.35rem!important;margin-bottom:4px!important;margin-top:4px!important}.auth-header p{font-size:.825rem!important;margin-bottom:6px!important}.input-wrapper input{height:52px!important;min-height:52px!important;font-size:.95rem!important}.password-toggle-btn{width:52px!important;min-width:52px!important;min-height:52px!important}.password-toggle-btn svg{width:1.25rem!important;height:1.25rem!important}.checkbox-container{padding:8px 0!important;font-size:.85rem!important;color:var(--text-secondary)!important;display:flex!important;align-items:flex-start!important;gap:10px!important;text-align:left!important;line-height:1.4!important}.checkbox-container input{width:20px!important;height:20px!important;cursor:pointer!important;margin:2px 0 0!important;flex-shrink:0!important}.role-selector{margin-bottom:12px!important;height:52px!important;padding:4px!important;gap:4px!important;display:flex!important;width:100%!important;box-sizing:border-box!important}.role-btn{flex:1 1!important;width:50%!important;height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:0 8px!important;font-size:.85rem!important;min-height:auto!important;border-radius:var(--radius-md)!important;transition:all .2s ease!important}.role-btn svg{width:1rem!important;height:1rem!important}#google-signin-btn{margin-bottom:10px!important;min-height:44px!important}.auth-divider{margin:10px 0!important}.auth-form{gap:14px!important}.form-group{gap:6px!important}.form-group label{color:var(--gray-800)!important;font-weight:600!important;font-size:.825rem!important}[data-theme=dark] .form-group label{color:var(--gray-200)!important}.auth-options{margin-top:6px!important;margin-bottom:6px!important;min-height:44px!important}.auth-form .btn{width:100%!important;min-height:52px!important;height:52px!important;font-size:.95rem!important;font-weight:600!important}.status-container{padding:8px 0!important}.status-icon{width:64px!important;height:64px!important;margin-bottom:12px!important}.status-icon i,.status-icon svg{width:32px!important;height:32px!important}.status-title{font-size:1.25rem!important;margin-bottom:6px!important}.status-message{font-size:.85rem!important;margin-bottom:16px!important}.btn-group{gap:8px!important}.btn-group .btn{min-height:52px!important;height:52px!important}}[data-theme=dark] .auth-header h1{color:#FFFFFF!important}[data-theme=dark] .checkbox-container,[data-theme=dark] .form-group label{color:#E2E8F0!important}[data-theme=dark] .auth-divider span,[data-theme=dark] .auth-footer p,[data-theme=dark] .auth-header p,[data-theme=dark] .login-helper-text,[data-theme=dark] .signup-subtitle{color:#CBD5E1!important}[data-theme=dark] .input-wrapper i,[data-theme=dark] .input-wrapper input::placeholder,[data-theme=dark] .input-wrapper svg,[data-theme=dark] .password-toggle-btn i,[data-theme=dark] .password-toggle-btn svg{color:#94A3B8!important}[data-theme=dark] .input-wrapper input{color:#F8FAFC!important}[data-theme=dark] .auth-container a:not(.btn),[data-theme=dark] .auth-footer a,[data-theme=dark] .forgot-link{color:#60A5FA!important}[data-theme=dark] .role-selector{background:#1e293b!important;border-color:#334155!important}[data-theme=dark] .role-btn{background:#334155!important;color:#CBD5E1!important;border-color:#334155!important}[data-theme=dark] .role-btn.active{background:#1e293b!important;color:#FFFFFF!important}[data-theme=dark] .role-btn:not(.active) .radio-circle{border-color:#475569!important}.auth-page:has(.auth-callback){align-items:center;justify-content:center;padding:24px 16px}.auth-callback{width:min(100%,420px);margin:auto;animation:authCallbackFadeIn .45s ease-out}@keyframes authCallbackFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.auth-callback-card{position:relative;overflow:hidden;padding:36px 28px 32px;text-align:center}.auth-callback-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(37,99,235,.06),transparent 45%,rgba(79,70,229,.05));pointer-events:none}.auth-callback-glow{position:absolute;top:-60px;left:50%;transform:translateX(-50%);width:200px;height:200px;background:radial-gradient(circle,rgba(37,99,235,.18) 0,transparent 70%);pointer-events:none;animation:authCallbackPulse 2.4s ease-in-out infinite}@keyframes authCallbackPulse{0%,to{opacity:.5;transform:translateX(-50%) scale(1)}50%{opacity:1;transform:translateX(-50%) scale(1.08)}}.auth-callback-brand{z-index:1;flex-direction:column;gap:20px;margin-bottom:24px}.auth-callback-brand,.auth-callback-logo-wrap{position:relative;display:flex;align-items:center}.auth-callback-logo-wrap{width:72px;height:72px;justify-content:center}.auth-callback-logo-wrap img{width:52px;height:52px;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(0 4px 12px rgba(37,99,235,.2))}.auth-callback-ring{position:absolute;inset:0;border-radius:50%;border:2px solid transparent}.auth-callback-ring-1{border-top-color:#2563eb;border-right-color:rgba(37,99,235,.25);animation:authCallbackSpin 1.1s linear infinite}.auth-callback-ring-2{inset:6px;border-bottom-color:#4f46e5;border-left-color:rgba(79,70,229,.2);animation:authCallbackSpin 1.6s linear infinite reverse}@keyframes authCallbackSpin{to{transform:rotate(1turn)}}.auth-callback-title{position:relative;z-index:1;font-size:1.25rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary,#0f172a);margin:0 0 6px}.auth-callback-subtitle{position:relative;z-index:1;font-size:.875rem;color:var(--text-secondary,#64748b);margin:0 0 28px;line-height:1.5}.auth-callback-steps{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px;margin-bottom:24px;text-align:left}.auth-callback-step{display:flex;align-items:center;gap:12px;font-size:.8125rem;color:var(--text-muted,#94a3b8);transition:color .35s ease,transform .35s ease}.auth-callback-step.active{color:var(--text-primary,#0f172a);font-weight:600}.auth-callback-step.done{color:#059669}.auth-callback-step-dot{flex-shrink:0;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f1f5f9;border:1.5px solid #e2e8f0;transition:all .35s ease}.auth-callback-step.active .auth-callback-step-dot{background:#eff6ff;border-color:#93c5fd;box-shadow:0 0 0 3px rgba(37,99,235,.12)}.auth-callback-step.done .auth-callback-step-dot{background:#ecfdf5;border-color:#6ee7b7}.auth-callback-step-dot-inner{width:6px;height:6px;border-radius:50%;background:#cbd5e1;transition:background .35s ease}.auth-callback-step.active .auth-callback-step-dot-inner{background:#2563eb;animation:authCallbackDotPulse 1s ease-in-out infinite}.auth-callback-step.done .auth-callback-step-dot-inner{display:none}.auth-callback-step-check{display:none;color:#059669}.auth-callback-step.done .auth-callback-step-check{display:block}@keyframes authCallbackDotPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.35);opacity:.7}}.auth-callback-progress-track{position:relative;z-index:1;height:4px;background:#e2e8f0;border-radius:999px;overflow:hidden}.auth-callback-progress-fill{height:100%;width:35%;background:linear-gradient(90deg,#2563eb,#4f46e5);border-radius:999px;animation:authCallbackProgress 2.2s ease-in-out infinite}@keyframes authCallbackProgress{0%{width:8%;margin-left:0}50%{width:55%;margin-left:22%}to{width:8%;margin-left:92%}}.auth-callback-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:14px 16px;font-size:.875rem;text-align:left;margin-bottom:20px;line-height:1.5}.auth-callback-back,.auth-callback-error{position:relative;z-index:1;border-radius:12px}.auth-callback-back{display:inline-flex;align-items:center;justify-content:center;width:100%;height:46px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-weight:600;font-size:.9375rem;text-decoration:none;box-shadow:0 4px 14px rgba(37,99,235,.35);transition:transform .2s ease,box-shadow .2s ease}.auth-callback-back:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(37,99,235,.4)}[data-theme=dark] .auth-callback-title{color:#f9fafb}[data-theme=dark] .auth-callback-subtitle{color:#94a3b8}[data-theme=dark] .auth-callback-step.active{color:#f1f5f9}[data-theme=dark] .auth-callback-step-dot{background:#1e293b;border-color:#334155}[data-theme=dark] .auth-callback-progress-track{background:#334155}