/*
Theme Name: Our Ancestral Tree
Theme URI: https://ourancestraltree.com/
Author: Our Ancestral Tree
Description: A visual genealogy portal theme modeled on the approved Our Ancestral Tree design, with an editable white navigation, two-part sidebar, color content panels, and full-width OAT plugin support.
Version: 1.7.2
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: our-ancestral-tree
*/
:root{--oat-ink:#101010;--oat-line:#cfd3d8;--oat-soft:#f6f7f8;--oat-link:#075fc6;--oat-max:1500px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f8f5ef;color:var(--oat-ink);font-family:Georgia,"Times New Roman",serif;font-size:16px;line-height:1.35}img{max-width:100%;height:auto;filter:none!important}a{color:var(--oat-link)}.oat-shell{width:min(var(--oat-max),calc(100% - 40px));margin:0 auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.site-header{border-bottom:1px solid var(--oat-line);background:#fff}.oat-header-art{display:block;width:100%;line-height:0;overflow:hidden;background:#f3ead8}.oat-header-art img{display:block;width:100%;height:auto;aspect-ratio:1536/176;object-fit:fill}.site-navigation{background:#fff;border-top:1px solid #ddd;border-bottom:1px solid #bfc3c7}.oat-sticky-nav .site-navigation{position:sticky;top:0;z-index:999}.oat-nav-row{min-height:50px;display:flex;align-items:center;gap:18px}.primary-menu{list-style:none;display:flex;align-items:stretch;gap:0;flex:1;margin:0;padding:0;white-space:nowrap}.primary-menu li{display:flex}.primary-menu a{display:flex;align-items:center;gap:7px;padding:15px 13px 12px;color:#111;text-decoration:none;text-transform:uppercase;font-size:14px;font-weight:700;border-bottom:3px solid transparent}.primary-menu a:hover,.primary-menu .current-menu-item>a,.primary-menu .current_page_item>a{border-bottom-color:var(--oat-link)}.menu-symbol{font-size:18px}.oat-search{margin-left:auto;display:flex}.oat-search input{width:190px;padding:8px 10px;border:1px solid #8e949a;font:inherit}.oat-search button{border:1px solid #8e949a;border-left:0;background:#fff;padding:8px 12px;cursor:pointer}.menu-toggle{display:none;background:#fff;border:1px solid #111;padding:8px 14px;font-weight:700}
.site-main{padding:18px 0 24px;min-height:60vh}.oat-dashboard{display:grid;grid-template-columns:244px minmax(0,1fr) 318px;gap:18px;align-items:start}.oat-sidebar{display:flex;flex-direction:column;gap:4px}.oat-side-panel{border:1px solid var(--oat-line);background:#fff;border-radius:4px;overflow:hidden}.oat-side-panel h2{display:flex;justify-content:space-between;align-items:center;margin:0;padding:12px 14px;background:linear-gradient(#fff,#f5f6f7);border-bottom:1px solid var(--oat-line);font-size:15px;text-transform:uppercase}.oat-side-panel.randomness h2{background:#eef4fb;color:#163f71}.oat-side-menu{list-style:none;margin:0;padding:0}.oat-side-menu li+li{border-top:1px solid #dce0e3}.oat-side-menu a{display:block;padding:9px 15px 9px 55px;color:#111;text-decoration:none;font-size:15px;position:relative}.oat-side-menu a:before{content:"▣";position:absolute;left:20px;color:#111}.oat-side-menu a:hover{background:#f3f6f8;color:var(--oat-link)}.oat-side-menu .oat-menu-edit a{padding-left:20px;text-align:center;font-weight:700;background:#f7f8fa}.oat-side-menu .oat-menu-edit a:before{display:none}
.oat-dashboard-main{min-width:0}.oat-hero{min-height:258px;border:1px solid var(--oat-line);border-radius:5px;overflow:hidden;display:grid;grid-template-columns:minmax(0,58%) minmax(280px,42%);background:#fff}.oat-hero-copy{padding:18px 34px;display:flex;flex-direction:column;justify-content:center}.oat-hero h1{font-size:clamp(34px,3.2vw,48px);line-height:1;margin:0 0 16px}.oat-hero p{font-size:17px;max-width:660px;margin:0 0 8px}.oat-flourish{text-align:center;max-width:370px;margin:0 0 12px;color:#333}.oat-primary-button{align-self:flex-start;background:#050505;color:#fff;text-decoration:none;text-transform:uppercase;font-weight:700;padding:12px 28px;border-radius:2px;box-shadow:0 2px 3px #aaa}.oat-primary-button:hover{background:#fff;color:#000;outline:1px solid #000}.oat-hero-image{background-size:cover;background-position:center;position:relative}.oat-hero-image:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0,rgba(255,255,255,.65) 15%,transparent 47%)}
.oat-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}.oat-feature-card{border:1px solid var(--oat-line);border-radius:4px;padding:8px;text-align:center;background:#fff;display:flex;flex-direction:column;min-width:0}.oat-feature-card img{width:100%;height:145px;object-fit:cover;border-radius:4px}.oat-feature-card h2{font-size:18px;line-height:1.1;text-transform:uppercase;margin:9px 0 5px}.oat-feature-card p{font-size:15px;line-height:1.25;margin:0 4px 10px;flex:1}.oat-feature-card>a{align-self:center;color:#111;text-decoration:none;text-transform:uppercase;font-size:12px;border:1px solid #8d9399;padding:5px 13px;background:#fff}.oat-feature-card>a:hover{background:#111;color:#fff}
.oat-lower-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:12px;margin-top:12px}.oat-data-panel{border:1px solid var(--oat-line);border-radius:4px;background:#fff;min-width:0}.oat-data-panel>header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px 5px;border-bottom:1px solid var(--oat-line)}.oat-data-panel>header h2{font-size:16px;text-transform:uppercase;margin:0}.oat-data-panel>header a{font-size:13px}.oat-person-list,.oat-news-list{padding:0 12px}.oat-person-list article,.oat-news-list article{display:flex;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid #dfe2e5}.oat-person-list article:last-child,.oat-news-list article:last-child{border-bottom:0}.oat-person-list img,.oat-news-list img{width:72px;height:62px;object-fit:cover;flex:0 0 auto}.oat-person-list h3,.oat-news-list h3{font-size:16px;margin:0}.oat-person-list h3 a,.oat-news-list h3 a{text-decoration:none}.oat-person-list p,.oat-news-list p{font-size:13px;margin:2px 0}.oat-news-list time{margin-left:auto;white-space:nowrap;font-size:12px}.oat-placeholder{padding:18px;color:#666}.oat-page-content{margin-top:14px;border:1px solid var(--oat-line);padding:20px;background:#fff}
.oat-featured-person{border:1px solid var(--oat-line);border-radius:4px;background:#fff;padding:8px 12px}.oat-featured-person>h2{text-align:center;text-transform:uppercase;font-size:13px;border-bottom:1px solid var(--oat-line);margin:0 0 10px;padding-bottom:5px}.oat-featured-inner{display:grid;grid-template-columns:145px 1fr;gap:12px}.oat-featured-inner img{width:145px;height:216px;object-fit:cover}.oat-featured-inner h3{font-size:24px;line-height:1;margin:3px 0 8px}.oat-featured-inner p{font-size:14px}.oat-featured-inner a{display:inline-block;border:1px solid #8d9399;color:#111;text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:700;padding:7px 14px}.oat-crown{font-size:29px;color:#b68a00}
.site-footer{border-top:1px solid var(--oat-line);padding:14px 0;background:#fff}.oat-footer-row{display:flex;justify-content:center;align-items:center;gap:24px;flex-wrap:wrap;font-size:14px}.footer-menu{display:flex;gap:18px;list-style:none;margin:0;padding:0}.footer-menu a{color:#111}
/* Plugin compatibility */.oat-plugin-page .site-main{padding-left:0;padding-right:0}.oat-plugin-page .site-main>.oat-shell,.oat-plugin-page .oat-plugin-shell{width:min(var(--oat-max),calc(100% - 32px));max-width:none;margin:auto}.oat-plugin-page .entry-title{display:none}.oat-plugin-page .entry-content{width:100%;max-width:none;margin:0}.oat-plugin-page .oat-content-card{padding:0;border:0}.entry-content :is(.oat-app,.oat-plugin,.oat-wrapper,.oat-container,.oat-relationship-explorer,.oat-genealogy-news,.oat-encyclopedia,.oat-records,.oat-video-library){max-width:100%;margin-inline:auto}.entry-content img,.gallery img,video{filter:none!important}
@media(max-width:1250px){.oat-dashboard{grid-template-columns:220px minmax(0,1fr)}.oat-featured-person{grid-column:2}.oat-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.oat-dashboard{grid-template-columns:1fr}.oat-sidebar{display:grid;grid-template-columns:1fr 1fr}.oat-featured-person{grid-column:auto}.oat-hero{grid-template-columns:1fr}.oat-hero-image{min-height:220px}.oat-lower-grid{grid-template-columns:1fr}.oat-search{display:none}}
@media(max-width:720px){.oat-shell{width:calc(100% - 20px)}.oat-header-art{min-height:0}.oat-header-art img{width:100%;height:auto;aspect-ratio:1536/176;object-fit:fill}.menu-toggle{display:block}.oat-nav-row{min-height:52px;flex-wrap:wrap;padding:7px 0}.primary-menu{display:none;width:100%;flex-direction:column}.primary-menu.is-open{display:flex}.primary-menu li{display:block}.primary-menu a{padding:10px 5px;border-bottom:1px solid #ddd}.oat-sidebar{display:flex}.oat-feature-grid{grid-template-columns:repeat(2,1fr)}.oat-hero-copy{padding:24px}.oat-featured-inner{grid-template-columns:110px 1fr}.oat-featured-inner img{width:110px;height:170px}.oat-news-list time{display:none}}
.menu-symbol.dashicons{font-size:19px;width:22px;height:22px;line-height:22px;margin-right:9px}.oat-side-panel h2 .dashicons{font-size:20px;width:22px;height:22px}.oat-home-person-card>a{display:flex;gap:14px;align-items:center;text-decoration:none;color:inherit}.oat-home-person-card img{width:78px;height:78px;object-fit:cover;border:1px solid #c8ced6;border-radius:4px}.oat-home-person-card h3{margin:0 0 4px}.oat-flexible-home-block{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;border:1px solid #c8ced6;border-radius:5px;padding:24px;margin-top:16px;background:#fff}.oat-flexible-home-block:has(>img){grid-template-columns:minmax(220px,35%) 1fr}.oat-flexible-home-block>img{width:100%;max-height:340px;object-fit:cover;border-radius:4px}.oat-featured-empty{padding:20px}.oat-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.oat-feature-grid{grid-template-columns:1fr}.oat-flexible-home-block:has(>img){grid-template-columns:1fr}}

/* OAT 1.5 branded icons and front-end builder */
.oat-brand-tree{display:inline-flex;width:25px;height:25px;align-items:center;justify-content:center;vertical-align:middle;overflow:hidden;border-radius:50%;background:#fff;border:1px solid #bfc4c9;flex:0 0 auto}.oat-brand-tree img{width:100%;height:100%;object-fit:cover;transform:scale(1.12)}.oat-panel-tree{margin-right:8px}.oat-menu-tree{width:21px;height:21px;margin-right:7px}.primary-menu .oat-brand-tree{border-color:#d3d6d9}.oat-side-menu .oat-brand-tree{position:absolute;left:18px;top:50%;transform:translateY(-50%);width:22px;height:22px}.oat-side-menu a:before{display:none}.oat-side-menu a{padding-left:52px}
.oat-builder-is-active :is(.oat-hero,.oat-feature-card,.oat-data-panel,.oat-featured-person){position:relative;outline:2px dashed rgba(7,95,198,.42);outline-offset:3px}.oat-builder-controls{position:absolute;z-index:20;top:7px;right:7px;display:flex;gap:5px;flex-wrap:wrap}.oat-builder-controls button,.oat-builder-box-tools button,.oat-restore-section{border:1px solid #111;background:#fff;color:#111;font:700 12px/1.2 Arial,sans-serif;padding:6px 9px;cursor:pointer;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.15)}.oat-builder-controls button:hover,.oat-builder-box-tools button:hover,.oat-restore-section:hover{background:#111;color:#fff}.oat-builder-box-tools{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap;margin:12px 0;padding:12px;border:1px dashed #9aa1a8;background:#f7f8fa}.oat-hidden-boxes{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.oat-restore-section{display:block;width:100%;margin:8px 0;padding:12px}.oat-builder-modal[hidden]{display:none}.oat-builder-modal{position:fixed;inset:0;background:rgba(0,0,0,.58);z-index:100000;display:flex;align-items:center;justify-content:center;padding:20px}.oat-builder-dialog{position:relative;width:min(620px,100%);max-height:90vh;overflow:auto;background:#fff;border:2px solid #111;border-radius:6px;padding:24px}.oat-builder-close{position:absolute;right:9px;top:7px;border:0;background:transparent;font-size:28px;cursor:pointer}.oat-builder-form h2{margin:0 0 18px}.oat-builder-form label{display:block;font-weight:700;margin:12px 0}.oat-builder-form input,.oat-builder-form textarea,.oat-builder-form select{display:block;width:100%;margin-top:5px;padding:9px 10px;border:1px solid #8e949a;font:inherit}.oat-image-field{display:flex;gap:8px}.oat-image-field input{flex:1}.oat-image-field button{white-space:nowrap}.oat-builder-save{margin-top:10px;background:#111;color:#fff;border:1px solid #111;padding:10px 18px;font-weight:700;cursor:pointer}.oat-builder-save:hover{background:#fff;color:#111}


/* OAT 1.6 featured layout and homepage spotlight widget */
.oat-right-rail{display:flex;flex-direction:column;gap:12px;min-width:0}.oat-featured-name-row{display:flex;align-items:center;gap:7px}.oat-featured-name-row h3{margin:3px 0 2px}.oat-featured-years{margin:0 0 10px;font-weight:700;color:#4b4f54}.oat-featured-description{margin:0 0 12px}.oat-historical-icon{display:inline-flex;width:25px;height:25px;align-items:center;justify-content:center;flex:0 0 auto;color:#111}.oat-historical-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.oat-spotlight-widget{position:relative;border:1px solid var(--oat-line);border-radius:4px;background:#fff;padding:8px 12px;overflow:hidden}.oat-spotlight-widget>h2{display:flex;align-items:center;justify-content:center;gap:7px;text-align:center;text-transform:uppercase;font-size:13px;border-bottom:1px solid var(--oat-line);margin:0 0 10px;padding-bottom:6px}.oat-spotlight-widget>h2 .oat-historical-icon{width:20px;height:20px}.oat-spotlight-image{display:block;width:100%;max-height:230px;object-fit:cover;margin:0 0 10px;border:1px solid #d4d7da}.oat-spotlight-copy h3{font-size:21px;line-height:1.1;margin:4px 0}.oat-spotlight-copy p{font-size:14px;margin:6px 0 10px}.oat-spotlight-meta{font-weight:700;color:#555}.oat-spotlight-widget audio,.oat-spotlight-widget video{display:block;width:100%;margin:10px 0}.oat-widget-button{display:inline-block;border:1px solid #8d9399;color:#111;text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:700;padding:7px 14px;margin-top:4px}.oat-widget-button:hover{background:#111;color:#fff}.oat-builder-is-active .oat-spotlight-widget{outline:2px dashed rgba(7,95,198,.42);outline-offset:3px}@media(max-width:1250px){.oat-right-rail{grid-column:2}}@media(max-width:900px){.oat-right-rail{grid-column:auto}}

.oat-news-thumbnail{width:72px;height:72px;object-fit:cover;flex:0 0 72px;border:1px solid #d4d8dc;}


/* OAT 1.6.3 icon, featured-name, and homepage width refinements */
.oat-dashboard{grid-template-columns:210px minmax(0,1fr) 320px;gap:16px}
.oat-menu-icon{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;flex:0 0 22px;margin-right:8px;color:#111;vertical-align:middle}
.oat-menu-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.primary-menu .oat-menu-icon{width:21px;height:21px;flex-basis:21px;margin-right:3px}
.oat-side-menu a{display:flex;align-items:center;padding-left:15px;gap:8px}
.oat-side-menu .oat-menu-icon{width:22px;height:22px;flex-basis:22px;margin-right:4px}
.oat-side-menu .oat-brand-tree{display:none}
.oat-featured-inner{grid-template-columns:118px minmax(0,1fr);gap:10px;align-items:start}
.oat-featured-inner img{width:118px;height:190px}
.oat-featured-name-row{flex-wrap:nowrap;gap:5px;min-width:0}
.oat-featured-name-row h3{font-size:20px;line-height:1.02;white-space:nowrap;margin:3px 0 3px}
.oat-featured-name-row .oat-historical-icon{width:22px;height:22px}
.oat-featured-crown svg{fill:none}
.oat-featured-years{font-size:14px;margin-top:2px}
@media(max-width:1250px){.oat-dashboard{grid-template-columns:205px minmax(0,1fr)}.oat-right-rail{grid-column:2}.oat-featured-person{grid-column:auto}}
@media(max-width:900px){.oat-dashboard{grid-template-columns:1fr}.oat-right-rail{grid-column:auto}.oat-featured-name-row h3{white-space:normal}}


/* OAT 1.6.4 featured crown and Explore panel icon refinements */
.oat-side-panel h2{justify-content:flex-start;gap:9px}
.oat-side-panel h2>span:last-child{margin-left:auto}
.oat-explore-icon{width:24px;height:24px;flex:0 0 24px;color:#111}
.oat-featured-name-block{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0;margin:0 0 2px}
.oat-featured-name-block .oat-featured-crown{width:25px;height:25px;margin:0 0 2px}
.oat-featured-name-block h3{font-size:18px;line-height:1.05;white-space:nowrap;margin:0 0 3px}
.oat-featured-inner>div{text-align:left}
.oat-featured-years{margin-top:0}
@media(max-width:1250px){.oat-featured-name-block h3{font-size:18px}}
@media(max-width:900px){.oat-featured-name-block h3{white-space:normal}}

/* OAT 1.6.6 featured alignment and Recently Added People link */
.oat-featured-inner>div{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0}
.oat-featured-years{width:100%;text-align:center;margin:0 0 10px}
.oat-featured-description{width:100%;text-align:center}
.oat-featured-inner>div>a{align-self:center;text-align:center}
.oat-recent-panel{position:relative}


/* OAT 1.6.7 refined family-tree button, new-tab news links, and sidebar widget stack */
.oat-family-tree-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:#fffaf0;color:#111;border:1px solid #111;box-shadow:none;border-radius:4px;padding:10px 20px;text-transform:none;font-size:16px;letter-spacing:.01em}
.oat-family-tree-button .oat-menu-icon{width:21px;height:21px;margin:0;color:#111}
.oat-family-tree-button:hover{background:#f3ead6;color:#111;outline:0;border-color:#9a762d}
.oat-news-list h3 a[target="_blank"]:after{content:" ↗";font-size:.8em;text-decoration:none}
.oat-sidebar-widget-stack{display:flex;flex-direction:column;gap:12px}
.oat-sidebar-widget{padding:8px 12px}
.oat-sidebar-widget .oat-spotlight-copy h3{font-size:17px;line-height:1.15;margin:3px 0 4px}
.oat-sidebar-widget .oat-spotlight-copy p{font-size:13px;line-height:1.3;margin:4px 0 8px}
.oat-sidebar-widget .oat-spotlight-image{max-height:150px}
.oat-restore-sidebar-widget{display:block;width:100%;border:1px dashed #8d9399;background:#fff;padding:10px;cursor:pointer;font-weight:700}
.oat-builder-is-active .oat-sidebar-widget{outline:2px dashed rgba(7,95,198,.42);outline-offset:3px}


/* OAT 1.6.8 crest removal and one-line family-tree button */
.oat-family-tree-button{min-width:330px;white-space:nowrap;padding-left:24px;padding-right:24px}
.oat-family-tree-button span{white-space:nowrap}
@media(max-width:520px){.oat-family-tree-button{min-width:0;width:100%;font-size:15px;padding-left:14px;padding-right:14px}}


/* OAT Homepage WordPress Widget Areas — v1.7 */
.oat-wordpress-widget-area { display: grid; gap: 14px; }
.oat-widget-area-left { margin-top: 14px; }
.oat-widget-area-right { margin-top: 14px; }
.oat-home-bottom-widgets { margin-top: 22px; margin-bottom: 22px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.oat-wordpress-widget {
    margin: 0;
    padding: 18px;
    border: 1px solid rgba(64, 53, 37, .18);
    border-radius: 9px;
    background: rgba(255, 252, 244, .86);
    box-shadow: 0 2px 8px rgba(38, 30, 20, .06);
    overflow-wrap: anywhere;
}
.oat-wordpress-widget .widget-title { margin: 0 0 12px; font-size: 1.18rem; line-height: 1.25; }
.oat-wordpress-widget ul { margin: 0; padding-left: 1.2rem; }
.oat-wordpress-widget img { max-width: 100%; height: auto; }
.oat-wordpress-widget select,
.oat-wordpress-widget input,
.oat-wordpress-widget textarea { max-width: 100%; }
.oat-manage-widget-area {
    display: block;
    margin: 12px 0;
    padding: 12px 14px;
    border: 2px dashed #8b7655;
    border-radius: 8px;
    background: rgba(255,255,255,.65);
    color: #3b3024;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
}
.oat-manage-widget-area:hover { background: #fffaf0; color: #111; }
@media (max-width: 900px) {
    .oat-home-bottom-widgets { grid-template-columns: 1fr; }
}

/* OAT 1.7.1 — custom CD/audio widget */
.oat-cd-audio-widget{display:flex;flex-direction:column;align-items:center;gap:10px;background:transparent;text-align:center}
.oat-cd-cover{display:block;width:min(100%,230px);aspect-ratio:1/1;object-fit:cover;border:1px solid var(--oat-line);border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.08);margin:0 auto}
.oat-cd-details{width:100%;text-align:center}.oat-cd-details h3{font-size:1.25rem;line-height:1.15;margin:0 0 4px}.oat-cd-meta{font-weight:700;color:#555;margin:0 0 8px}.oat-cd-description p{margin:0 0 9px}.oat-cd-player{display:block;width:100%;margin:10px 0 4px}
@media(max-width:520px){.oat-cd-cover{max-width:220px}}
