/* Shri Yogindra Math Platform frontend styles */

.sym-event-list-clean{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:24px;
    align-items:stretch;
}

.sym-event-clean{
    width:100%;
    margin:0;
}

.sym-hero {
    min-height: 430px;
    background: linear-gradient(135deg, #7b2d12, #d88a24, #fff3d1);
    border-radius: 0 0 36px 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 60px 20px;
    color: #fff;
}
.sym-hero-inner {
    max-width: 980px;
}
.sym-hero h1 {
    font-size: clamp(34px, 6vw, 72px);
    margin: 0 0 14px;
    line-height: 1.1;
}
.sym-hero p {
    font-size: 22px;
}
.sym-hero-actions, .sym-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 18px;
}
.sym-hero-actions {
    justify-content: center;
}
.sym-btn {
    display: inline-block;
    padding: 12px 20px;
    border-radius: 999px;
    background: #7b2d12;
    color: #fff !important;
    text-decoration: none;
    border: none;
    cursor: pointer;
    font-weight: 700;
}
.sym-btn-light {
    background: #fff;
    color: #7b2d12 !important;
    border: 1px solid #e8d1ad;
}
.sym-section {
    max-width: 1180px;
    margin: 48px auto;
    padding: 0 20px;
}
.sym-two-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}
.sym-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 22px;
    margin: 24px 0;
}
.sym-card {
    background: #fff;
    border: 1px solid #eee0c8;
    border-radius: 22px;
    padding: 22px;
    box-shadow: 0 10px 28px rgba(80, 42, 10, 0.08);
}
.sym-card img, .sym-card video, .sym-card iframe {
    max-width: 100%;
    border-radius: 16px;
}
.sym-card audio {
    width: 100%;
}
.sym-event-list {
    display: grid;
    gap: 16px;
}
.sym-event {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 18px;
    background: #fffaf2;
    border: 1px solid #efd9b2;
    border-radius: 20px;
    padding: 18px;
}
.sym-event-date {
    background: #7b2d12;
    color: #fff;
    border-radius: 16px;
    padding: 16px;
    text-align: center;
    font-weight: 800;
}
.sym-form {
    background: #fffaf2;
    border: 1px solid #efd9b2;
    border-radius: 24px;
    padding: 24px;
    display: grid;
    gap: 14px;
}
.sym-form label {
    display: grid;
    gap: 6px;
    font-weight: 700;
}
.sym-form input, .sym-form textarea, .sym-form select {
    padding: 12px;
    border: 1px solid #d8c09a;
    border-radius: 12px;
    font-size: 16px;
}
.sym-check {
    display: flex !important;
    grid-template-columns: auto 1fr;
    gap: 10px !important;
    align-items: center;
}
.sym-pdf-viewer {
    max-width: 1180px;
    margin: 40px auto;
    padding: 20px;
}
.sym-pdf-viewer iframe {
    border: 1px solid #ddd;
    border-radius: 18px;
}
@media (max-width: 780px) {
    .sym-two-col, .sym-event {
        grid-template-columns: 1fr;
    }
}

.sym-devotional-hero { background: radial-gradient(circle at top, #fff4c5, #d98c22 38%, #6b1f10 100%); }
.sym-mantra { font-size: 24px; font-weight: 800; margin-bottom: 12px; color: #fff8d7; }
.sym-deity-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:18px; }
.sym-content { font-size:18px; line-height:1.8; }
.sym-content h1, .sym-content h2 { color:#7b2d12; }
.sym-list-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:12px; margin-top:20px; }
.sym-list-item { background:#fffaf2; border:1px solid #efd9b2; border-radius:14px; padding:12px 14px; font-weight:600; }

.sym-deity-card {
    text-align: center;
    overflow: hidden;
}
.sym-deity-img {
    width: 100%;
    height: 240px;
    object-fit: cover;
    border-radius: 18px;
    margin-bottom: 16px;
    box-shadow: 0 8px 20px rgba(80, 42, 10, 0.12);
}
.sym-deity-placeholder {
    width: 100%;
    height: 240px;
    border-radius: 18px;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #fff4c5, #d98c22);
    color: #7b2d12;
    font-weight: 800;
    font-size: 24px;
}
.sym-btn-small {
    padding: 9px 14px;
    font-size: 14px;
}
.sym-notices {
    display: grid;
    gap: 12px;
    margin-bottom: 28px;
}
.sym-notice {
    background: #fff8e8;
    border-left: 5px solid #d98c22;
    border-radius: 14px;
    padding: 16px 18px;
}
.sym-notice h3 {
    margin-top: 0;
    color: #7b2d12;
}

.sym-books .sym-actions {
    margin-top: 16px;
}
.sym-books .sym-card {
    display: flex;
    flex-direction: column;
}
.sym-books .sym-card .sym-actions {
    margin-top: auto;
}


/* v1.6 responsive audio visual gallery */
.sym-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
}

.sym-gallery-card {
    overflow: hidden;
    padding: 14px !important;
}

.sym-gallery-content {
    padding-top: 12px;
}

.sym-gallery-content h3 {
    margin: 6px 0 8px;
    color: #7b2d12;
    line-height: 1.25;
}

.sym-video-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 18px;
    background: #000;
    box-shadow: 0 4px 18px rgba(0,0,0,0.08);
}

.sym-video-wrap iframe,
.sym-video-wrap video {
    position: absolute;
    inset: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0;
    display: block;
}

.sym-audio-wrap {
    width: 100%;
    padding: 18px;
    border-radius: 18px;
    background: linear-gradient(135deg, #fff4c5, #f7dfb6);
    box-sizing: border-box;
}

.sym-audio-wrap audio {
    width: 100%;
    display: block;
}

.sym-gallery-img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    object-position: center;
    border-radius: 18px;
    display: block;
}

.sym-gallery-placeholder {
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff4c5;
    color: #7b2d12;
    font-weight: 800;
}

@media (max-width: 640px) {
    .sym-gallery {
        grid-template-columns: 1fr;
        gap: 14px;
    }
    .sym-gallery-card {
        padding: 12px !important;
    }
}


/* v1.7 searchable book library */
.sym-book-filter {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: center;
    background: #fffaf2;
    border: 1px solid #efd9b2;
    border-radius: 20px;
    padding: 16px;
    margin: 20px 0 24px;
}
.sym-book-filter input,
.sym-book-filter select {
    padding: 11px 13px;
    border: 1px solid #d8c09a;
    border-radius: 999px;
    min-width: 220px;
    font-size: 15px;
}
.sym-book-card h3 {
    font-size: 25px;
    line-height: 1.2;
}
.sym-book-cover {
    width: 100%;
    aspect-ratio: 3 / 4;
    object-fit: cover;
    border-radius: 16px;
    margin-bottom: 14px;
    background: #fff4c5;
}
@media (max-width: 640px) {
    .sym-book-filter { display: grid; }
    .sym-book-filter input,
    .sym-book-filter select,
    .sym-book-filter .sym-btn { width: 100%; box-sizing: border-box; }
}


/* v1.8 editable dynamic sections */
.sym-dynamic-page {
    max-width: 1180px;
}

.sym-editable-section {
    margin-bottom: 28px;
}

.sym-editable-section h1 {
    font-size: clamp(34px, 5vw, 54px);
    color: #7b2d12;
}

.sym-editable-section h2 {
    font-size: clamp(26px, 3vw, 38px);
    color: #8b2c0f;
    margin-top: 28px;
}

.sym-editable-section p {
    font-size: 19px;
    line-height: 1.8;
}

.sym-section-image {
    width: 100%;
    max-height: 420px;
    object-fit: cover;
    border-radius: 22px;
    margin-bottom: 20px;
}


/* v2.3 Marathi compact book/download UI */
.sym-books-section .sym-section-title{
    font-size:34px;
    margin:0 0 6px;
    color:#7b2d12;
}
.sym-section-intro{
    margin:0 0 14px;
    color:#4b2a18;
}
.sym-book-filter{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    align-items:center;
    padding:10px;
    border:1px solid #ead7b7;
    border-radius:16px;
    background:#fffaf2;
    margin:12px 0 18px;
}
.sym-book-filter input,
.sym-book-filter select{
    min-height:38px;
    padding:8px 12px;
    border:1px solid #d8c09a;
    border-radius:999px;
    background:#fff;
    font-size:15px;
}
.sym-book-filter input{
    flex:1 1 260px;
}
.sym-book-filter select{
    flex:0 1 210px;
}
.sym-books{
    grid-template-columns:repeat(auto-fit,minmax(190px,1fr)) !important;
    gap:14px !important;
}
.sym-book-card{
    padding:14px !important;
    border-radius:16px !important;
    display:flex;
    flex-direction:column;
}
.sym-book-card h3{
    font-size:19px !important;
    line-height:1.25 !important;
    margin:8px 0 !important;
    color:#14213d;
}
.sym-book-card p{
    font-size:13px !important;
    line-height:1.42 !important;
    margin:5px 0 !important;
}
.sym-book-cover{
    width:100%;
    aspect-ratio:3/4;
    object-fit:cover;
    border-radius:14px;
    margin-bottom:8px;
}
.sym-book-desc{
    flex:1;
}
.sym-actions{
    display:flex;
    gap:7px;
    flex-wrap:wrap;
    margin-top:10px;
}
.sym-book-card .sym-btn{
    padding:7px 11px !important;
    font-size:13px !important;
}
.sym-empty,
.sym-missing-pdf{
    padding:12px 14px;
    border-radius:14px;
    background:#fff3cd;
    border:1px solid #ead7b7;
    color:#6b3a0a;
}
@media(max-width:720px){
    .sym-books{grid-template-columns:repeat(auto-fit,minmax(150px,1fr)) !important;}
    .sym-book-card h3{font-size:17px !important;}
}

/* v2.4 homepage/deity/book polish */
.sym-home-deities{padding-top:18px !important;}
.sym-home-deities .sym-grid,.sym-deities{grid-template-columns:repeat(auto-fit,minmax(150px,1fr)) !important;gap:18px !important;}
.sym-deity-card{text-align:center;border:0 !important;box-shadow:none !important;background:transparent !important;padding:8px !important;}
.sym-deity-card .sym-deity-img,.sym-deity-img{width:100% !important;max-width:210px !important;height:230px !important;object-fit:cover !important;object-position:center top !important;border-radius:4px !important;margin:0 auto 10px !important;display:block !important;}
.sym-deity-card h3{font-size:18px !important;line-height:1.25 !important;color:#14213d !important;margin:8px 0 4px !important;}
.sym-content h2{color:#7b2d12;}
.sym-published-books h2,.sym-section-title{text-align:center;color:#ef3b55;}
.sym-published-books ul{columns:4 220px;column-gap:38px;max-width:1180px;margin:0 auto;}
.sym-published-books li{break-inside:avoid;margin:5px 0;color:#6b1642;}
@media(max-width:720px){.sym-deity-img{height:190px !important;}.sym-published-books ul{columns:1;}}


/* v2.5 devotional homepage */
.sym-home-intro{
    text-align:center;
    max-width:1180px;
    margin:0 auto 18px;
    padding:24px 18px 18px;
    border-bottom:1px dotted #b7a58a;
}
.sym-home-mantra{
    color:#ef3b55;
    font-size:32px;
    font-weight:700;
    line-height:1.25;
    margin-bottom:8px;
}
.sym-home-intro h1{
    color:#2f3a63;
    font-size:32px;
    line-height:1.35;
    margin:4px 0;
}
.sym-home-intro h2{
    color:#2f3a63;
    font-size:30px;
    line-height:1.35;
    margin:3px 0;
}
.sym-home-intro h2:last-of-type{
    color:#ef3b55;
}
.sym-home-subtitle{
    margin-top:18px;
    padding-top:14px;
    border-top:1px dotted #b7a58a;
    color:#1d2440;
    font-size:20px;
    font-weight:700;
}
.sym-home-info-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px;
    max-width:1180px;
}
.sym-home-info-card{
    background:#fffaf2;
    border:1px solid #ecd7b3;
    border-radius:18px;
    padding:18px 20px;
    box-shadow:0 8px 22px rgba(80,42,10,.06);
}
.sym-home-info-card h2{
    color:#ef7d00;
    font-size:23px;
    line-height:1.35;
    margin:0 0 10px;
}
.sym-home-info-card p{
    color:#222;
    font-size:18px;
    line-height:1.75;
    margin:0;
    text-align:justify;
}
.sym-home-info-card.sym-wide{
    grid-column:1 / -1;
}
.sym-deity-card h3 a{
    color:#14213d !important;
    text-decoration:none;
}
.sym-deity-card h3 a:hover{
    color:#8b2f08 !important;
    text-decoration:underline;
}
@media(max-width:768px){
    .sym-home-mantra{font-size:25px;}
    .sym-home-intro h1,.sym-home-intro h2{font-size:22px;}
    .sym-home-info-grid{grid-template-columns:1fr;gap:14px;}
    .sym-home-info-card p{font-size:16px;}
}


/* v2.7 full Marathi homepage + media gallery fix */
.sym-home-intro{
    text-align:center;
    max-width:1180px;
    margin:0 auto 18px;
    padding:24px 18px 18px;
    border-bottom:1px dotted #b7a58a;
}
.sym-home-mantra{
    color:#ef3b55;
    font-size:32px;
    font-weight:700;
    line-height:1.25;
    margin-bottom:8px;
}
.sym-home-intro h1{
    color:#2f3a63;
    font-size:32px;
    line-height:1.35;
    margin:4px 0;
}
.sym-home-intro h2{
    color:#2f3a63;
    font-size:30px;
    line-height:1.35;
    margin:3px 0;
}
.sym-home-intro h2:last-of-type{color:#ef3b55;}
.sym-home-subtitle{
    margin-top:18px;
    padding-top:14px;
    border-top:1px dotted #b7a58a;
    color:#1d2440;
    font-size:20px;
    font-weight:700;
}
.sym-home-info-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:24px;
    max-width:1180px;
}
.sym-home-info-card{
    background:#fffaf2;
    border:1px solid #ecd7b3;
    border-radius:18px;
    padding:18px 20px;
    box-shadow:0 8px 22px rgba(80,42,10,.06);
}
.sym-home-info-card h2{
    color:#ef7d00;
    font-size:23px;
    line-height:1.35;
    margin:0 0 10px;
}
.sym-home-info-card p{
    color:#222;
    font-size:18px;
    line-height:1.75;
    margin:0;
    text-align:justify;
}
.sym-home-info-card.sym-wide{grid-column:1/-1;}
.sym-gallery-section .sym-section-title{
    color:#7b2d12;
    text-align:left;
    font-size:32px;
}
.sym-gallery-card h3 a,
.sym-deity-card h3 a{
    color:#14213d !important;
    text-decoration:none;
}
.sym-gallery-card h3 a:hover,
.sym-deity-card h3 a:hover{
    color:#8b2f08 !important;
    text-decoration:underline;
}
.sym-video-wrap{
    position:relative;
    aspect-ratio:16/9;
    background:#111;
    border-radius:14px;
    overflow:hidden;
    margin-bottom:12px;
}
.sym-video-wrap iframe,
.sym-video-wrap video{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
}
.sym-audio-player{
    width:100%;
    margin:10px 0 14px;
}
.sym-gallery-img{
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
    border-radius:14px;
    margin-bottom:12px;
}
.sym-media-file{
    min-height:120px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    background:#fff3cd;
    border:1px solid #ead7b7;
    color:#7b2d12;
    font-weight:700;
    margin-bottom:12px;
}
@media(max-width:768px){
    .sym-home-mantra{font-size:25px;}
    .sym-home-intro h1,.sym-home-intro h2{font-size:22px;}
    .sym-home-info-grid{grid-template-columns:1fr;gap:14px;}
    .sym-home-info-card p{font-size:16px;}
}


/* v2.8 premium graphic header + archive gallery/book template UI */
.sym-plugin-main{
    max-width:1240px;
    margin:0 auto;
}
.sym-graphic-hero{
    position:relative;
    overflow:hidden;
    margin:22px auto;
    max-width:1180px;
    min-height:380px;
    border-radius:36px;
    background:
        radial-gradient(circle at 50% 20%, rgba(255,255,255,.45), transparent 25%),
        radial-gradient(circle at 12% 18%, rgba(255,220,120,.45), transparent 22%),
        linear-gradient(135deg,#7b250c 0%,#c76605 42%,#fff2c6 100%);
    box-shadow:0 18px 40px rgba(90,43,10,.18);
}
.sym-graphic-hero:before{
    content:"";
    position:absolute;
    inset:18px;
    border:1px solid rgba(255,255,255,.35);
    border-radius:28px;
    pointer-events:none;
}
.sym-graphic-hero:after{
    content:"";
    position:absolute;
    right:-80px;
    bottom:-110px;
    width:340px;
    height:340px;
    border-radius:50%;
    background:rgba(255,255,255,.22);
}
.sym-graphic-hero-inner{
    position:relative;
    z-index:2;
    text-align:center;
    padding:48px 28px 42px;
    color:#fff;
}
.sym-hero-om{
    font-size:54px;
    line-height:1;
    color:#fff3c8;
    text-shadow:0 3px 14px rgba(80,30,5,.35);
}
.sym-graphic-hero .sym-home-mantra{
    font-size:30px;
    color:#fff3c8;
    font-weight:700;
    margin:4px 0 12px;
}
.sym-graphic-hero h1{
    font-size:clamp(30px,4.6vw,58px);
    color:#fff;
    line-height:1.2;
    margin:4px 0;
    text-shadow:0 3px 16px rgba(60,25,5,.28);
}
.sym-graphic-hero h2{
    font-size:clamp(24px,3.6vw,42px);
    color:#fff8df;
    line-height:1.25;
    margin:4px 0;
    text-shadow:0 3px 16px rgba(60,25,5,.25);
}
.sym-graphic-hero .sym-home-subtitle{
    display:inline-block;
    color:#8a2b0b;
    background:#fff8df;
    border-radius:999px;
    padding:8px 22px;
    margin:18px 0 14px;
    font-size:22px;
    font-weight:700;
}
.sym-gallery-section .sym-section-title,
.sym-books-section .sym-section-title{
    color:#7b2d12 !important;
    text-align:left !important;
    font-size:34px !important;
}
.sym-video-wrap{
    position:relative;
    aspect-ratio:16/9;
    background:#111;
    border-radius:14px;
    overflow:hidden;
    margin-bottom:12px;
}
.sym-video-wrap iframe,
.sym-video-wrap video{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
}
.sym-audio-player{
    width:100%;
    margin:12px 0 16px;
}
.sym-gallery-img{
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
    border-radius:14px;
    margin-bottom:12px;
}
.sym-media-file{
    min-height:130px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    background:#fff3cd;
    border:1px solid #ead7b7;
    color:#7b2d12 !important;
    font-weight:700;
    text-decoration:none;
    margin-bottom:12px;
}
.sym-gallery-card h3 a,
.sym-book-card h3 a{
    color:#14213d !important;
    text-decoration:none;
}
.sym-gallery-card h3 a:hover,
.sym-book-card h3 a:hover{
    color:#8b2f08 !important;
    text-decoration:underline;
}
.sym-book-single-cover{
    max-width:280px;
    height:auto;
    border-radius:16px;
    float:right;
    margin:0 0 18px 22px;
}
.sym-book-big-actions{
    margin:20px 0;
}
@media(max-width:768px){
    .sym-graphic-hero{min-height:300px;border-radius:24px;}
    .sym-graphic-hero-inner{padding:34px 18px;}
    .sym-hero-om{font-size:42px;}
    .sym-book-single-cover{float:none;max-width:100%;margin:0 0 16px;}
}

/* v2.9 Books page only */
.sym-books-section .sym-published-books{
    margin-bottom:24px !important;
    padding:16px !important;
    border:1px solid #ecd7b3;
    border-radius:18px;
    background:#fffaf2;
}
.sym-books-section .sym-published-books h2{margin-top:0 !important;}
.sym-books-section .sym-published-books ul{columns:4 220px;column-gap:36px;}
.sym-books-section .sym-published-books li{break-inside:avoid;margin:4px 0;}
@media(max-width:768px){.sym-books-section .sym-published-books ul{columns:1;}}


/* v3.1 Marathi events/archive fixes */
.post-type-archive-sym_event .entry-meta,
.single-sym_event .entry-meta,
.tax-sym_event_category .entry-meta,
.post-type-archive-sym_event .posted-on,
.single-sym_event .posted-on,
.post-type-archive-sym_event .byline,
.single-sym_event .byline,
.post-type-archive-sym_event .author,
.single-sym_event .author,
.post-type-archive-sym_event .updated,
.single-sym_event .updated,
.post-type-archive-sym_event .published,
.single-sym_event .published{
    display:none !important;
}
.sym-events-section{max-width:1240px;margin-left:auto;margin-right:auto;}
.sym-event-grid{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr)) !important;gap:18px !important;}
.sym-event-card h3{font-size:22px;line-height:1.25;margin-top:0;}
.sym-event-card p,.sym-event-clean p{font-size:16px;line-height:1.45;margin:8px 0;}
.sym-event-list-clean .sym-event-date{display:none !important;}
.sym-event-list-clean .sym-event{display:block !important;}


/* v3.2 Event archive/single Marathi fix */
.post-type-archive-sym_event .entry-meta,
.single-sym_event .entry-meta,
.post-type-archive-sym_event .posted-on,
.single-sym_event .posted-on,
.post-type-archive-sym_event .byline,
.single-sym_event .byline,
.post-type-archive-sym_event .author,
.single-sym_event .author,
.post-type-archive-sym_event .updated,
.single-sym_event .updated,
.post-type-archive-sym_event .published,
.single-sym_event .published{
    display:none !important;
}
.sym-events-section{max-width:1180px;margin-left:auto;margin-right:auto;}
.sym-events-section .sym-section-title{color:#7b2d12;font-size:34px;margin-bottom:18px;}
.sym-event-list-clean{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;}
.sym-event-clean{border-left:4px solid #d78114;}
.sym-event-clean h3{margin-top:0;}
.sym-event-clean p{margin:7px 0;}
