*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:#333;background-color:#f8f9fa}.loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.loading-content{text-align:center;color:white}.loading-content h1{font-size:2.5rem;margin-bottom:1rem;font-weight:600}.loading-content p{font-size:1.1rem;opacity:.9}.landing-page{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.landing-container{max-width:600px;width:100%;text-align:center}.landing-header{margin-bottom:3rem}.logo-section{margin-bottom:2rem}.app-title{margin-bottom:1rem}.punjabi-text{display:block;font-size:2.5rem;color:white;font-weight:700;margin-bottom:.5rem}.english-text{display:block;font-size:1.5rem;color:rgba(255,255,255,.9);font-weight:500}.app-subtitle{color:rgba(255,255,255,.8);font-size:1.1rem;max-width:400px;margin:0 auto}.install-section{margin-top:1.5rem}.install-btn{background:rgba(255,255,255,.2);color:white;border:2px solid rgba(255,255,255,.3);padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:all .2s ease;backdrop-filter:blur(10px)}.install-btn:hover{background:rgba(255,255,255,.3);border-color:rgba(255,255,255,.5)}.features-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:3rem}.feature-card{background:rgba(255,255,255,.1);padding:2rem 1.5rem;border-radius:12px;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);transition:transform .2s ease}.feature-card:hover{transform:translateY(-4px)}.feature-icon{font-size:2.5rem;margin-bottom:1rem}.feature-card h3{color:white;font-size:1.25rem;margin-bottom:.75rem;font-weight:600}.feature-card p{color:rgba(255,255,255,.8);line-height:1.6}.auth-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}.website-link{color:rgba(255,255,255,.8)}.website-link a{color:white;text-decoration:none;font-weight:500;margin-left:.5rem}.website-link a:hover{text-decoration:underline}.dashboard-layout{display:flex;min-height:100vh}.sidebar{width:260px;background:linear-gradient(135deg,#667eea,#764ba2);color:white;display:flex;flex-direction:column;box-shadow:2px 0 10px rgba(0,0,0,.1)}.sidebar-header{padding:1.5rem 1rem;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-header h2{font-size:1.25rem;font-weight:600}.sidebar-nav{flex:1;padding:1rem 0}.sidebar-nav a{display:flex;align-items:center;padding:.875rem 1rem;color:rgba(255,255,255,.8);text-decoration:none;transition:all .2s ease;border-left:3px solid transparent}.sidebar-nav a:hover{background:rgba(255,255,255,.1);color:white;border-left-color:rgba(255,255,255,.3)}.sidebar-nav a.active{background:rgba(255,255,255,.15);color:white;border-left-color:#fff;font-weight:500}.sidebar-footer{padding:1rem;border-top:1px solid rgba(255,255,255,.1)}.sidebar-footer button{width:100%;padding:.75rem;background:rgba(255,255,255,.1);color:white;border:none;border-radius:6px;cursor:pointer;transition:background .2s ease}.sidebar-footer button:hover{background:rgba(255,255,255,.2)}.main-content{flex:1;display:flex;flex-direction:column}.main-header{padding:1.5rem 2rem;background:white;border-bottom:1px solid #e9ecef;box-shadow:0 1px 3px rgba(0,0,0,.1)}.main-header h1{font-size:1.5rem;color:#2c3e50;font-weight:600}.content{flex:1;padding:2rem;background:#f8f9fa}.dashboard-home{max-width:1200px}.welcome-section{margin-bottom:2rem}.welcome-section h1{font-size:2rem;color:#2c3e50;margin-bottom:.5rem}.welcome-section p{color:#6c757d;font-size:1.1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:3rem}.stat-card{background:white;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.1);display:flex;align-items:center;gap:1rem;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.15)}.stat-icon{font-size:2.5rem;background:linear-gradient(135deg,#667eea,#764ba2);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.stat-content h3{font-size:1rem;color:#6c757d;margin-bottom:.25rem}.stat-number{font-size:1.5rem;font-weight:700;color:#2c3e50;display:block}.stat-label,.stat-link{font-size:.875rem;color:#6c757d}.stat-link{color:#667eea;text-decoration:none;font-weight:500}.stat-link:hover{text-decoration:underline}.quick-actions,.recent-activity{margin-bottom:3rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{color:#2c3e50;font-size:1.5rem;font-weight:600}.posts-preview{display:grid;gap:1rem}.post-preview{background:white;padding:1.5rem;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);border-left:4px solid #667eea}.post-content p{color:#2c3e50;margin-bottom:.75rem;line-height:1.6}.post-meta time{color:#6c757d;font-size:.875rem}.empty-state{text-align:center;padding:3rem 1rem;background:white;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{color:#2c3e50;font-size:1.25rem;margin-bottom:.5rem}.empty-state p{color:#6c757d;margin-bottom:1.5rem}.action-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.action-card{background:white;padding:2rem 1.5rem;border-radius:12px;text-decoration:none;color:inherit;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:all .2s ease;text-align:center}.action-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.15)}.action-icon{font-size:2.5rem;margin-bottom:1rem}.action-card h3{color:#2c3e50;font-size:1.1rem;margin-bottom:.5rem}.action-card p{color:#6c757d;font-size:.9rem}.news-dashboard{max-width:1200px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;background:white;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.header-content h1{font-size:2rem;color:#2c3e50;margin-bottom:.5rem}.header-content p{color:#6c757d}.news-stats{margin-bottom:2rem;padding:1rem 1.5rem;background:white;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.stat-item{display:flex;align-items:center;gap:.75rem}.stat-item .stat-number{font-size:1.5rem;font-weight:700;color:#667eea}.stat-item .stat-label{color:#6c757d}.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem;margin-bottom:3rem}.news-card{background:white;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.1);transition:all .3s ease;border:1px solid #e9ecef}.news-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.15)}.news-image{position:relative;width:100%;height:200px;overflow:hidden}.news-content{padding:1.5rem}.news-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.news-title{font-size:1.1rem;color:#2c3e50;line-height:1.4;font-weight:600;flex:1}.news-category{background:#667eea;color:white;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;margin-left:1rem;white-space:nowrap}.news-preview{color:#6c757d;line-height:1.6;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.news-meta{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #e9ecef}.meta-left{display:flex;flex-direction:column;gap:.25rem}.news-date{color:#6c757d;font-size:.875rem}.news-author{color:#495057;font-size:.8rem;font-weight:500}.read-more-btn{color:#667eea;text-decoration:none;font-weight:500;font-size:.875rem;padding:.5rem 1rem;border:1px solid #667eea;border-radius:6px;transition:all .2s ease}.read-more-btn:hover{background:#667eea;color:white}.news-footer{text-align:center;padding:2rem;background:white;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.news-footer p{color:#6c757d;margin-bottom:1rem}.news-footer a{color:#667eea;text-decoration:none;font-weight:500;margin-left:.5rem}.auth-card{padding:2.5rem;border-radius:16px;box-shadow:0 10px 40px rgba(0,0,0,.2);max-width:420px}.auth-card h1{margin-bottom:2rem;font-size:1.75rem}.auth-form{gap:1rem;margin-bottom:1.5rem}.auth-form input{padding:1rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;transition:border-color .2s ease}.auth-form input:focus{outline:none;border-color:#667eea}.auth-card p{text-align:center;color:#6c757d}.auth-card a{color:#667eea;text-decoration:none;font-weight:500}.auth-card a:hover{text-decoration:underline}.btn-primary,.btn-secondary{padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:500;text-align:center;display:inline-block;cursor:pointer;transition:all .2s ease;border:none;font-size:.95rem}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(102,126,234,.4)}.btn-secondary{background:white;color:#667eea;border:2px solid #667eea}.btn-secondary:hover{background:#667eea;color:white}.loading,.loading-posts{text-align:center;padding:2rem;color:#6c757d}.error{color:#dc3545;background:#f8d7da;padding:.75rem;border-radius:6px;border:1px solid #f5c6cb}.success{color:#155724;background:#d4edda;padding:.75rem;border-radius:6px;border:1px solid #c3e6cb}@media (max-width:768px){.dashboard-layout{flex-direction:column}.sidebar{width:100%;height:auto}.sidebar-nav{display:flex;overflow-x:auto;padding:.5rem 0}.sidebar-nav a{white-space:nowrap;min-width:auto}.content{padding:1rem}.news-grid,.stats-grid{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:stretch;gap:1rem}.action-buttons,.features-section{grid-template-columns:1fr}.auth-actions{flex-direction:column;align-items:center}.punjabi-text{font-size:2rem}.english-text{font-size:1.25rem}}@media (max-width:480px){.auth-card,.landing-container{margin:1rem;padding:2rem 1.5rem}.welcome-section h1{font-size:1.5rem}.news-card{margin:0 -.5rem}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem 1rem}.auth-card{background:white;padding:3rem 2.5rem;border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.3);width:100%;max-width:450px;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-card h1{text-align:center;color:#2c3e50;margin-bottom:.5rem;font-size:2rem;font-weight:700}.auth-subtitle{text-align:center;color:#6c757d;margin-bottom:2rem;font-size:.95rem}.auth-form{gap:1.25rem}.auth-form,.form-field{display:flex;flex-direction:column}.form-field{gap:.5rem}.form-field label{font-weight:500;color:#2c3e50;font-size:.9rem}.form-field input{padding:.875rem 1rem;border:2px solid #e9ecef;border-radius:10px;font-size:1rem;transition:all .2s ease}.form-field input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.1)}.form-field small{color:#6c757d;font-size:.85rem}.username-input-wrapper{position:relative}.username-status{position:absolute;right:1rem;top:50%;transform:translateY(-50%);font-size:.85rem;font-weight:500}.username-status.checking{color:#6c757d}.username-status.available{color:#28a745}.username-status.taken{color:#dc3545}.form-actions{display:flex;justify-content:flex-end;margin-top:-.5rem}.forgot-link{color:#667eea;text-decoration:none;font-size:.9rem;font-weight:500}.forgot-link:hover{text-decoration:underline}.btn-primary{padding:.875rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:white;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,.4)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.auth-divider{position:relative;text-align:center;margin:1.5rem 0}.auth-divider:before{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background:#e9ecef}.auth-divider span{position:relative;background:white;padding:0 1rem;color:#6c757d;font-size:.9rem}.btn-google{width:100%;padding:.875rem 1.5rem;background:white;border:2px solid #e9ecef;border-radius:10px;font-size:1rem;font-weight:500;color:#2c3e50;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.75rem}.btn-google:hover:not(:disabled){border-color:#667eea;box-shadow:0 4px 12px rgba(0,0,0,.1)}.btn-google:disabled{opacity:.6;cursor:not-allowed}.btn-google svg{flex-shrink:0}.auth-footer{text-align:center;color:#6c757d;margin-top:1.5rem;font-size:.95rem}.auth-footer a{color:#667eea;text-decoration:none;font-weight:600}.auth-footer a:hover{text-decoration:underline}.pwa-install-button{position:fixed;bottom:2rem;right:2rem;display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:white;border:none;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 8px 24px rgba(102,126,234,.4);transition:all .3s ease;z-index:1000;animation:slideInRight .4s ease-out}@keyframes slideInRight{0%{opacity:0;transform:translateX(100px)}to{opacity:1;transform:translateX(0)}}.pwa-install-button:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(102,126,234,.5)}.pwa-install-button svg{animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media (max-width:768px){.auth-card{padding:2rem 1.5rem}.pwa-install-button{bottom:1rem;right:1rem;padding:.75rem 1.25rem;font-size:.9rem}.pwa-install-button span{display:none}body{padding-bottom:calc(70px + env(safe-area-inset-bottom))}.content,.main-content,[class*=dashboard],[class*=page]{padding-bottom:calc(70px + env(safe-area-inset-bottom))!important}}@media (display-mode:standalone){body{overscroll-behavior-y:none;-webkit-user-select:none;user-select:none}@supports (padding-top:env(safe-area-inset-top)){body{padding-top:env(safe-area-inset-top)}}}body{overscroll-behavior-y:contain}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}