*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#faf7f2;--surface:#fff;--text:#2d2a24;--text2:#6b6560;--text3:#8a8378;
  --primary:#c84b1e;--primary-hover:#b03e16;--accent:#fdf6ee;--border:#e8e2d9;
  --radius:12px;--shadow:0 1px 3px rgba(0,0,0,.06);--transition:.2s ease;
  --font-sans:'Inter','Segoe UI',system-ui,-apple-system,sans-serif;
  --font-serif:'Crimson Pro','Georgia',serif;
  --font-deva:'Noto Serif Devanagari','Nirmala UI','Mangal',serif;
  --max-w:1100px;
}
.dark{--bg:#141210;--surface:#1e1b17;--text:#e8e2d9;--text2:#a0968a;--text3:#7a7064;--border:#2d2822;--accent:#1a1713}
body{font-family:var(--font-sans);background:var(--bg);color:var(--text);min-height:100vh;transition:background var(--transition),color var(--transition);-webkit-font-smoothing:antialiased}
a{color:var(--primary);text-decoration:none}

/* Nav */
.top-nav{position:sticky;top:0;z-index:100;background:rgba(250,247,242,.92);border-bottom:1px solid var(--border);backdrop-filter:blur(12px);}
.dark .top-nav{background:rgba(20,18,16,.92)}
.nav-inner{max-width:var(--max-w);margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:56px}
.nav-logo{font-weight:700;font-size:16px;color:var(--text);display:flex;align-items:center;gap:8px}
.nav-logo img{width:28px;height:28px;border-radius:50%}
.nav-links{display:flex;align-items:center;gap:24px;list-style:none}
.nav-links a{font-size:14px;color:var(--text2);font-weight:500;transition:color var(--transition)}
.nav-links a:hover{color:var(--primary)}
.nav-right{display:flex;align-items:center;gap:12px}
.icon-btn{background:none;border:1px solid var(--border);border-radius:8px;color:var(--text);width:36px;height:36px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:var(--transition)}
.icon-btn:hover{background:var(--accent);border-color:var(--primary)}
.menu-btn{display:none}
.install-btn{display:none}
.nav-brand-by{font-size:10px;color:var(--text3);font-weight:400;letter-spacing:0;display:none}
.nav-logo{position:relative}
.nav-logo:hover .nav-brand-by{display:inline}
.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;border:none;transition:var(--transition)}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--primary-hover)}
.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text)}
.btn-outline:hover{border-color:var(--primary);color:var(--primary)}

/* Hero */
.hero{text-align:center;padding:80px 24px 48px;max-width:640px;margin:auto}
.hero h1{font-size:44px;font-weight:800;letter-spacing:-1.5px;line-height:1.15;margin-bottom:12px}
.hero h1 span{color:var(--primary)}
.hero p{font-size:18px;color:var(--text2);line-height:1.6;margin-bottom:32px}
.hero-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* Section */
.section{padding:48px 24px}
.section-inner{max-width:var(--max-w);margin:auto}
.section-title{font-size:28px;font-weight:700;margin-bottom:8px}
.section-sub{color:var(--text2);margin-bottom:32px}

/* Chapter Grid */
.chapter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.ch-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow)}
.ch-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.08)}
.ch-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}
.ch-num{font-size:11px;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:1.2px}
.ch-name{font-size:18px;font-weight:700;margin-bottom:2px}
.ch-name-skt{font-size:14px;font-weight:500;color:var(--primary);font-family:var(--font-deva);margin-bottom:8px}
.ch-desc{font-size:14px;color:var(--text2);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ch-verses{font-size:13px;color:var(--text3);margin-top:10px}

/* Popular Verses */
.popular-scroll{display:flex;gap:16px;overflow-x:auto;padding-bottom:12px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.popular-scroll::-webkit-scrollbar{height:4px}
.popular-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}
.pop-card{flex:0 0 280px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;scroll-snap-align:start;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow)}
.pop-card:hover{border-color:var(--primary)}
.pop-ref{font-size:12px;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}
.pop-chapter{font-size:12px;color:var(--text3);margin-bottom:8px}
.pop-text{font-size:14px;color:var(--text2);line-height:1.5;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pop-link{font-size:13px;font-weight:600;color:var(--primary)}
.scroll-hint{text-align:center;font-size:13px;color:var(--text3);margin-top:8px}

/* FAQ */
.faq-list{max-width:700px;margin:auto}
.faq-item{border-bottom:1px solid var(--border)}
.faq-q{width:100%;text-align:left;padding:18px 0;font-size:15px;font-weight:600;background:none;border:none;color:var(--text);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:var(--transition)}
.faq-q:hover{color:var(--primary)}
.faq-q .faq-icon{font-size:20px;transition:transform var(--transition);color:var(--text3)}
.faq-q.open .faq-icon{transform:rotate(45deg)}
.faq-a{overflow:hidden;max-height:0;transition:max-height .3s ease,padding .3s ease;padding:0}
.faq-a.open{max-height:300px;padding:0 0 18px}
.faq-a p{font-size:14px;color:var(--text2);line-height:1.7}

/* Footer */
.footer{background:var(--surface);border-top:1px solid var(--border);padding:48px 24px 32px;margin-top:48px}
.footer-brand{text-align:center;margin-bottom:32px}
.footer-logo{font-size:20px;font-weight:800;color:var(--text);letter-spacing:-.5px}
.footer-tagline{font-family:var(--font-deva);font-size:14px;color:var(--text3);margin-top:4px}
.footer-inner{max-width:var(--max-w);margin:auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
.footer h3{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text3);margin-bottom:16px}
.footer p{font-size:14px;color:var(--text2);line-height:1.6;margin-bottom:16px}
.footer a{display:block;font-size:14px;color:var(--text2);margin-bottom:10px;transition:color var(--transition)}
.footer a:hover{color:var(--primary)}
.footer-social{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.footer-social a{display:inline-flex;align-items:center;gap:6px;width:auto;height:auto;border:none;border-radius:0;font-size:14px}
.footer-bottom{max-width:var(--max-w);margin:32px auto 0;padding-top:24px;border-top:1px solid var(--border);text-align:center;font-size:13px;color:var(--text3);font-family:var(--font-deva)}

/* Chapter Page */
.ch-page{display:none;max-width:var(--max-w);margin:auto;padding:24px}
.ch-page.active{display:block}
.breadcrumb{font-size:13px;color:var(--text3);margin-bottom:20px}
.breadcrumb a{color:var(--text3);transition:color var(--transition)}
.breadcrumb a:hover{color:var(--primary)}
.breadcrumb span{color:var(--text2)}
.ch-page-header{margin-bottom:32px}
.ch-page-header .ch-num{font-size:12px}
.ch-page-header h1{font-size:32px;font-weight:800;margin:4px 0}
.ch-page-header .ch-name-skt{font-size:16px;margin-bottom:4px}
.ch-page-intro{font-size:15px;color:var(--text2);line-height:1.7;margin-bottom:32px;max-width:800px}

/* Verse List */
.verse-list{display:grid;gap:8px}
.vl-card{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:var(--surface);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:var(--transition)}
.vl-card:hover{border-color:var(--primary);background:var(--accent)}
.vl-left{display:flex;align-items:center;gap:12px}
.vl-num{font-size:13px;font-weight:700;color:var(--primary);min-width:70px}
.vl-summary{font-size:14px;color:var(--text2);line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.vl-play{width:32px;height:32px;border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);background:none;color:var(--text2);font-size:12px}
.vl-play:hover{background:var(--primary);color:#fff;border-color:var(--primary)}
.ch-nav{display:flex;justify-content:space-between;margin-top:32px;gap:16px}
.ch-nav a{padding:12px 24px;border:1px solid var(--border);border-radius:8px;font-size:14px;font-weight:600;transition:var(--transition);color:var(--text);text-align:center;flex:1}
.ch-nav a:hover{border-color:var(--primary);color:var(--primary)}

/* Verse Page */
.v-page{display:none;max-width:800px;margin:auto;padding:24px}
.v-page.active{display:block}
.v-header{text-align:center;margin-bottom:32px}
.v-ref{font-size:15px;font-weight:700;color:var(--primary);margin-bottom:8px}
.v-sanskrit{font-family:var(--font-deva);font-size:24px;line-height:2;margin-bottom:12px;padding:16px 0}
.v-translit{font-style:italic;font-size:16px;color:var(--text2);line-height:1.8;margin-bottom:24px}

/* Verse Audio Player */
.v-audio{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:32px;padding:12px 24px;background:var(--surface);border:1px solid var(--border);border-radius:40px;max-width:420px;margin-left:auto;margin-right:auto}
.v-audio button{width:40px;height:40px;border-radius:50%;border:none;background:var(--primary);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:var(--transition);flex-shrink:0}
.v-audio button:hover{background:var(--primary-hover)}
.v-audio .v-seek{flex:1;height:4px;accent-color:var(--primary);cursor:pointer;min-width:80px}
.v-audio .v-time{font-size:13px;color:var(--text3);min-width:80px;text-align:center;font-variant-numeric:tabular-nums}
  .v-audio .v-speed{font-size:12px;color:var(--text3);background:none;border:1px solid var(--border);border-radius:4px;padding:2px 8px;cursor:pointer}

/* Mobile tap highlight fix */
*{-webkit-tap-highlight-color:transparent}
input,button,a,select,textarea{touch-action:manipulation}

/* Word Meanings */
.v-section{margin-bottom:28px}
.v-section h3{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--text3);margin-bottom:16px}
.words-grid{display:grid;grid-template-columns:1fr;gap:6px}
.word-row{display:grid;grid-template-columns:140px 1fr;gap:12px;padding:6px 0;border-bottom:1px solid var(--border);font-size:14px;line-height:1.6}
.word-row:last-child{border-bottom:none}
.word-skt{font-style:italic;color:var(--text)}
.word-eng{color:var(--text2)}
.v-translation{font-size:16px;line-height:1.7;color:var(--text);padding:12px 20px;background:var(--accent);border-radius:8px;border-left:3px solid var(--primary)}
.v-commentary{font-size:15px;line-height:1.7;color:var(--text2);padding:12px 20px}

/* Verse Nav */
.v-nav{display:flex;justify-content:space-between;align-items:center;margin-top:32px;padding-top:24px;border-top:1px solid var(--border)}
.v-nav-left,.v-nav-right{display:flex;align-items:center;gap:8px}
.v-nav a{padding:8px 16px;border:1px solid var(--border);border-radius:8px;font-size:13px;font-weight:600;transition:var(--transition);color:var(--text)}
.v-nav a:hover{border-color:var(--primary);color:var(--primary)}
.v-nav-center{font-size:13px;color:var(--text3)}
.v-nav-ch a{padding:10px 20px;border:1px solid var(--border);border-radius:8px;font-size:14px;font-weight:600;transition:var(--transition);color:var(--text);display:inline-flex;align-items:center;gap:8px}
.v-nav-ch a:hover{border-color:var(--primary);color:var(--primary)}

/* Hidden */
.hidden{display:none!important}

/* Home view toggle */
#homeView{display:none}

#homeView.active{display:block}
/* Contact Page */
.contact-page{max-width:700px;margin:auto;padding:24px}
.contact-title{font-size:32px;font-weight:800;margin-bottom:4px;color:var(--primary);font-family:var(--font-deva)}
.contact-subtitle{font-size:18px;font-weight:700;margin-bottom:8px;color:var(--text)}
.contact-desc{font-size:15px;color:var(--text2);line-height:1.7;margin-bottom:32px}
.contact-card{text-align:center;padding:32px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:32px}
.contact-initials{width:64px;height:64px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;margin:0 auto 16px}
.contact-name{font-size:20px;font-weight:700;margin-bottom:4px}
.contact-qual{font-size:14px;color:var(--text3);margin-bottom:4px}
.contact-role{font-size:14px;color:var(--primary);font-weight:600}
.contact-details{display:grid;gap:16px;margin-bottom:32px}
.contact-item{display:flex;align-items:flex-start;gap:16px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:8px;font-size:14px;color:var(--text2);line-height:1.6}
.contact-icon{font-size:20px;flex-shrink:0;width:24px;text-align:center}
.contact-item a{color:var(--primary);font-weight:600}
.contact-form-section,.contact-donate{text-align:center;padding:32px;background:var(--accent);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:24px}
.contact-form-section h3,.contact-donate h3{font-size:18px;font-weight:700;margin-bottom:8px}
.contact-form-section p,.contact-donate p{font-size:14px;color:var(--text2);line-height:1.6;margin-bottom:20px}
.contact-social{text-align:center;margin-bottom:32px}
.contact-social h3{font-size:18px;font-weight:700;margin-bottom:16px}
.social-link{display:inline-flex;align-items:center;gap:8px;padding:8px 20px;margin:4px;border:1px solid var(--border);border-radius:8px;font-size:14px;color:var(--text2);transition:var(--transition)}
.social-link:hover{border-color:var(--primary);color:var(--primary)}

@media(max-width:768px){
  .hero{padding:48px 20px 32px}
  .hero h1{font-size:28px}
  .hero p{font-size:16px}
  .chapter-grid{grid-template-columns:1fr}
  .footer-inner{grid-template-columns:1fr 1fr;gap:24px}
  .nav-links{display:none}
  .nav-links.open{display:flex;flex-direction:column;position:absolute;top:56px;left:0;right:0;background:var(--surface);border-bottom:1px solid var(--border);padding:16px 24px;gap:12px;z-index:99}
  .menu-btn{display:flex!important}
  .v-sanskrit{font-size:20px}
  .word-row{grid-template-columns:1fr;gap:2px}
  .v-audio{padding:10px 16px;gap:10px}
  .v-audio .v-seek{min-width:60px;height:6px}
  .ch-page,.v-page,.contact-page{padding:16px}
  .ch-page-header h1{font-size:24px}
  .section{padding:32px 16px}
  .contact-title{font-size:24px}
}

@media(max-width:480px){
  .hero h1{font-size:24px}
  .footer-inner{grid-template-columns:1fr}
  .vl-card{padding:14px 16px;min-height:52px}
  .vl-num{min-width:50px;font-size:12px}
  .vl-summary{font-size:13px}
  .v-audio{flex-wrap:wrap;padding:12px 16px}
  .v-audio button{width:44px;height:44px}
}

/* About Page */
.about-page{max-width:800px;margin:auto;padding:24px}
.about-hero{text-align:center;padding:60px 24px 40px}
.about-hero-label{font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--text3);margin-bottom:12px}
.about-hero h1{font-size:48px;font-weight:800;letter-spacing:-2px;line-height:1.1;margin-bottom:12px;color:var(--primary)}
.about-hero-sub{font-size:18px;color:var(--text2);line-height:1.6;max-width:600px;margin:0 auto 28px}
.about-hero-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.about-section{padding:48px 0}
.about-section-label{font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--primary);margin-bottom:8px}
.about-section h2{font-size:32px;font-weight:800;margin-bottom:16px;letter-spacing:-1px}
.about-section p{font-size:16px;color:var(--text2);line-height:1.8;margin-bottom:16px}
.about-alt{padding:48px 24px;margin:0 -24px;background:var(--accent)}
.about-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin:24px 0}
.about-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;transition:var(--transition)}
.about-card:hover{border-color:var(--primary);transform:translateY(-2px)}
.about-card-title{font-size:15px;font-weight:700;margin-bottom:8px;color:var(--text)}
.about-card p{font-size:14px;color:var(--text2);line-height:1.6;margin:0}
.about-quote{font-style:italic;font-size:18px!important;color:var(--primary)!important;padding:24px;border-left:3px solid var(--primary);margin:24px 0!important}
.about-profiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin:24px 0}
.about-profile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px;text-align:center;transition:var(--transition)}
.about-profile:hover{border-color:var(--primary)}
.about-profile-avatar{width:80px;height:80px;border-radius:50%;margin:0 auto 16px;background:var(--accent);border:2px solid var(--border)}
.about-profile-avatar.vyasa{background:linear-gradient(135deg,#c84b1e,#e8915a)}
.about-profile-avatar.ganesh{background:linear-gradient(135deg,#e8915a,#c84b1e)}
.about-profile-avatar.krishna{background:linear-gradient(135deg,#1a5276,#5dade2)}
.about-profile-avatar.arjuna{background:linear-gradient(135deg,#196f3d,#58d68d)}
.about-profile-avatar.sanjaya{background:linear-gradient(135deg,#6c3483,#af7ac5)}
.about-profile-label{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--text3);margin-bottom:4px}
.about-profile h3{font-size:20px;font-weight:800;margin-bottom:4px}
.about-profile-role{font-size:13px;color:var(--primary);font-weight:600;margin-bottom:16px}
.about-profile p{font-size:14px;color:var(--text2);line-height:1.7;margin:0 0 8px!important}
.about-cta{text-align:center;padding:60px 24px}
.about-cta h2{font-size:32px;font-weight:800;margin-bottom:12px}
.about-cta p{font-size:16px;color:var(--text2);line-height:1.6;max-width:500px;margin:0 auto 24px}
.about-cta .btn{margin:4px}

@media(max-width:768px){
  .about-hero h1{font-size:32px}
  .about-hero-sub{font-size:16px}
  .about-section h2{font-size:24px}
  .about-cards{grid-template-columns:1fr}
  .about-profiles{grid-template-columns:1fr}
  .about-alt{padding:32px 16px;margin:0 -16px}
}
