/* PHANTASO CMS — Modern UI layer (Olivin-inspired polish) */

/* ── Header 02 ── */
.phantaso-header--02{border-bottom:0;box-shadow:0 1px 0 rgba(15,23,42,.06),0 4px 24px rgba(15,23,42,.04)}
.phantaso-header--02 .phantaso-header__topbar{background:var(--phantaso-primary,#0f172a);color:rgba(255,255,255,.88);font-size:.75rem;font-weight:500}
.phantaso-header--02 .phantaso-header__topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.4rem 1rem;max-width:80rem;margin:0 auto}
.phantaso-header--02 .phantaso-header__topbar-tagline{opacity:.75;max-width:28rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.phantaso-header--02 .phantaso-header__main{background:#fff}
.phantaso-header--02 .phantaso-header__inner{flex-wrap:wrap}
@media(min-width:1024px){
	.phantaso-header--02 .phantaso-header__inner{flex-wrap:nowrap}
	.phantaso-header--02 .phantaso-nav--desktop{flex:1;margin:0 1.25rem}
	.phantaso-header--02 .phantaso-header__actions{margin-left:0;flex-shrink:0}
}
.phantaso-header--02 .phantaso-header__brand{flex:0 1 auto;min-width:0}
.phantaso-header--02 .phantaso-site-title{font-size:clamp(1.25rem,2.5vw,1.625rem);font-weight:800;letter-spacing:-.02em;color:var(--phantaso-primary,#0f172a)}
.phantaso-header--02 .phantaso-site-title:hover{color:var(--phantaso-link,var(--phantaso-accent,#2563eb))}
.phantaso-header--02 .custom-logo-link{display:block;line-height:0}
.phantaso-header--02 .custom-logo{max-height:52px;width:auto}
.phantaso-header--02 .phantaso-header__actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}
.phantaso-header--02 .phantaso-header__search{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:.5rem;color:#64748b;border:1px solid #e2e8f0;background:#f8fafc;transition:background .15s,color .15s,border-color .15s}
.phantaso-header--02 .phantaso-header__search:hover{color:var(--phantaso-link,#2563eb);border-color:#cbd5e1;background:#fff}
.phantaso-header--02 .phantaso-header__social{display:none;align-items:center;gap:.35rem}
@media(min-width:768px){.phantaso-header--02 .phantaso-header__social{display:flex}}
.phantaso-header--02 .phantaso-header__social a{display:inline-flex;align-items:center;justify-content:center;width:1.875rem;height:1.875rem;border-radius:999px;font-size:.6875rem;font-weight:700;color:#64748b;background:#f1f5f9;transition:background .15s,color .15s}
.phantaso-header--02 .phantaso-header__social a:hover{background:var(--phantaso-accent,#2563eb);color:#fff}
.phantaso-header--02 .phantaso-nav__list a{position:relative;font-weight:600;color:#334155;padding:.25rem 0}
.phantaso-header--02 .phantaso-nav__list a:hover,.phantaso-header--02 .phantaso-nav__list .current-menu-item>a{color:var(--phantaso-link,var(--phantaso-accent,#2563eb))}
.phantaso-header--02 .phantaso-nav__list .current-menu-item>a::after{content:"";position:absolute;left:0;right:0;bottom:-.35rem;height:2px;border-radius:2px;background:var(--phantaso-accent,#2563eb)}
body.phantaso-sticky-header .phantaso-header--02{position:sticky;top:0;z-index:50}

/* ── Footer 02 ── */
.phantaso-footer--02{margin-top:0;background:linear-gradient(180deg,var(--phantaso-primary,#0f172a) 0%,#020617 100%)}
.phantaso-footer--02 .phantaso-footer__widgets{padding:3rem 1rem 2rem}
.phantaso-footer--02 .phantaso-footer-widget-title{font-size:.8125rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.phantaso-footer--02 .phantaso-footer__bottom{background:rgba(0,0,0,.2)}
.phantaso-footer--02 .phantaso-footer__bottom-inner{flex-direction:row;flex-wrap:wrap;justify-content:space-between;text-align:left;padding:1.25rem 1rem}
.phantaso-footer--02 .phantaso-footer__copy{margin-left:auto}

/* ── Widget panels (home zones) ── */
.phantaso-widget--panel{background:#fff;border:1px solid #e8edf3;border-radius:.875rem;padding:1rem 1.125rem;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.phantaso-home-zone--top .phantaso-widget--panel,.phantaso-home-zone--bottom .phantaso-widget--panel{border:0;box-shadow:none;background:transparent;padding:0}
.phantaso-widget__head{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}
.phantaso-widget--panel .phantaso-widget-title{margin:0;padding:0;font-size:.9375rem;font-weight:800;letter-spacing:-.01em;color:var(--phantaso-primary,#0f172a);flex:1}
.phantaso-widget--panel .phantaso-widget-title::before{display:none}
.phantaso-widget__accent{flex:1;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--phantaso-accent,#2563eb),transparent);opacity:.35;min-width:2rem}

/* ── Homepage portal ── */
.phantaso-homepage--10{background:var(--phantaso-bg,#f8fafc)}
.phantaso-homepage--10 .phantaso-homepage__inner{gap:1.25rem;padding-top:1.25rem}
.phantaso-homepage--10 .phantaso-home-zone{background:transparent;border:0;padding:0}
.phantaso-homepage--10 .phantaso-homepage__grid{gap:1.25rem}
@media(min-width:1024px){.phantaso-homepage--10 .phantaso-homepage__grid{grid-template-columns:minmax(0,1fr) minmax(0,2.1fr) minmax(0,1fr)}}
.phantaso-home-categories{padding-top:2rem;margin-top:.5rem;border-top:1px solid #e2e8f0}
.phantaso-home-cat-strip__header{margin-bottom:1.125rem}
.phantaso-home-categories__title{font-size:1rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;border-bottom:3px solid var(--phantaso-accent,#2563eb);padding-bottom:.5rem}

/* ── Post cards ── */
.phantaso-card{border:0;border-radius:.875rem;overflow:hidden;background:#fff;box-shadow:0 1px 3px rgba(15,23,42,.06),0 4px 16px rgba(15,23,42,.04);transition:transform .2s,box-shadow .2s}
.phantaso-card:hover{transform:translateY(-3px);box-shadow:0 8px 28px rgba(15,23,42,.1)}
.phantaso-card__thumb{position:relative;display:block;overflow:hidden;background:#e2e8f0}
.phantaso-card__thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(15,23,42,.15));opacity:0;transition:opacity .25s}
.phantaso-card:hover .phantaso-card__thumb::after{opacity:1}
.phantaso-card__body{padding:1rem 1.125rem 1.125rem}
.phantaso-card__cats{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}
.phantaso-card__cats a{display:inline-block;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--phantaso-accent,#2563eb);background:color-mix(in srgb,var(--phantaso-accent,#2563eb) 12%,transparent);padding:.2rem .5rem;border-radius:.25rem}
.phantaso-card__cats a:hover{opacity:.85}
.phantaso-card__title{font-size:1.0625rem;font-weight:700;line-height:1.35;letter-spacing:-.01em}
.phantaso-card__excerpt{margin-top:.35rem;line-height:1.55}
.phantaso-card__meta{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #f1f5f9;font-size:.75rem;color:#94a3b8}

/* ── Hero fallback ── */
.phantaso-hero-card{border-radius:1rem;box-shadow:0 12px 40px rgba(15,23,42,.15)}
.phantaso-hero-card__body{padding:2rem 1.5rem 1.5rem}
.phantaso-hero-card__body h2{font-size:clamp(1.375rem,3vw,1.875rem);font-weight:800;line-height:1.2;letter-spacing:-.02em}
.phantaso-hero-card__body a{color:#fff}
.phantaso-hero-card__meta{margin-top:.5rem;font-size:.8125rem;opacity:.85}

/* ── Breaking news (full bleed) ── */
.phantaso-home-zone--top .phantaso-breaking{border-radius:.625rem;margin-bottom:.25rem}
.phantaso-breaking{border-radius:.5rem;box-shadow:0 2px 8px rgba(220,38,38,.25)}
.phantaso-breaking__label{background:rgba(0,0,0,.2)!important;padding:.25rem .625rem!important;border-radius:.25rem;font-size:.6875rem!important;letter-spacing:.08em}

/* ── Homepage 06 — Magazine categories ── */
.phantaso-homepage--06{background:var(--phantaso-bg,#fff)}
.phantaso-homepage--06 .phantaso-home-mag{padding:2rem 0 2.5rem}
.phantaso-homepage--06 .phantaso-cat-pills{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.875rem;margin-bottom:2.5rem}
.phantaso-homepage--06 .phantaso-cat-pill{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;min-height:5.5rem;padding:1.25rem 1rem;border-radius:.875rem;background:linear-gradient(145deg,color-mix(in srgb,var(--phantaso-accent,#2563eb) 8%,#fff),#fff);border:1px solid color-mix(in srgb,var(--phantaso-accent,#2563eb) 15%,#e2e8f0);font-weight:700;font-size:.9375rem;color:var(--phantaso-primary,#0f172a);text-align:center;transition:transform .2s,box-shadow .2s,border-color .2s}
.phantaso-homepage--06 .phantaso-cat-pill:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(15,23,42,.08);border-color:var(--phantaso-accent,#2563eb)}
.phantaso-homepage--06 .phantaso-cat-pill__count{font-size:.6875rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em}

/* ── Homepage 08 — Minimal blog ── */
.phantaso-homepage--08{max-width:42rem;margin:0 auto;padding:3rem 1.5rem 4rem}
.phantaso-homepage--08 .phantaso-minimal-intro{margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e2e8f0}
.phantaso-homepage--08 .phantaso-minimal-intro h1{font-size:1.5rem;font-weight:800;letter-spacing:-.03em;margin:0 0 .35rem;color:var(--phantaso-primary,#0f172a)}
.phantaso-homepage--08 .phantaso-minimal-intro p{margin:0;font-size:.9375rem;color:#64748b;line-height:1.6}
.phantaso-minimal-list{display:flex;flex-direction:column;gap:0}
.phantaso-minimal-item{padding:1.5rem 0;border-bottom:1px solid #f1f5f9}
.phantaso-minimal-item:first-child{padding-top:0}
.phantaso-minimal-item__date{font-size:.75rem;font-weight:600;color:var(--phantaso-accent,#64748b);text-transform:uppercase;letter-spacing:.05em}
.phantaso-minimal-item__title{font-size:1.125rem;font-weight:700;margin:.35rem 0 .5rem;line-height:1.35;letter-spacing:-.01em}
.phantaso-minimal-item__title a{color:var(--phantaso-primary,#0f172a);transition:color .15s}
.phantaso-minimal-item__title a:hover{color:var(--phantaso-link,#2563eb)}
.phantaso-minimal-item__excerpt{font-size:.9375rem;color:#64748b;margin:0;line-height:1.65}

/* ── Homepage 04 — Finance ── */
.phantaso-homepage--04{background:var(--phantaso-bg,#f0f9ff)}
.phantaso-homepage--04 .phantaso-finance-hero{padding:2.5rem 0 1.5rem}
.phantaso-homepage--04 .phantaso-finance-hero h1{font-size:clamp(1.5rem,3vw,2rem);font-weight:800;letter-spacing:-.02em;margin:0 0 .35rem}
.phantaso-homepage--04 .phantaso-finance-hero p{margin:0;color:#64748b;font-size:.9375rem}
.phantaso-homepage--04 .phantaso-finance-tools{display:grid;gap:1rem;margin-bottom:2.5rem}
@media(min-width:768px){.phantaso-homepage--04 .phantaso-finance-tools{grid-template-columns:repeat(2,1fr)}}
.phantaso-homepage--04 .phantaso-section-title{font-size:1rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin:0 0 1.25rem;padding-bottom:.5rem;border-bottom:2px solid var(--phantaso-accent,#0891b2);display:inline-block}

/* ── Carousel & ranked polish ── */
.phantaso-carousel__item{border:0;box-shadow:0 2px 8px rgba(15,23,42,.06)}
.phantaso-carousel__item:hover{box-shadow:0 10px 28px rgba(15,23,42,.12)}
.pw-ranked__num{font-size:1.75rem;font-weight:900;font-variant-numeric:tabular-nums}
.pw-ranked--1 .pw-ranked__num{color:var(--phantaso-accent,#2563eb)}

/* ── Admin demo gallery (also in admin.css duplicate minimal) ── */
.phantaso-demo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}
.phantaso-demo-card{position:relative;display:flex;flex-direction:column;gap:.5rem;padding:1.125rem;border:1px solid #e2e8f0;border-radius:.875rem;background:#fff;text-align:left;transition:border-color .2s,box-shadow .2s,transform .2s;cursor:pointer;font:inherit;color:inherit}
.phantaso-demo-card:hover{border-color:#cbd5e1;box-shadow:0 8px 24px rgba(15,23,42,.08);transform:translateY(-2px)}
.phantaso-demo-card__icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:.625rem;color:#fff;font-size:1.125rem}
.phantaso-demo-card__icon .dashicons{font-size:1.25rem;width:1.25rem;height:1.25rem}
.phantaso-demo-card__label{font-size:.9375rem;font-weight:700;margin:0;color:#0f172a}
.phantaso-demo-card__desc{font-size:.8125rem;color:#64748b;margin:0;line-height:1.45;flex:1}
.phantaso-demo-card__apply{margin-top:.35rem;font-size:.75rem;font-weight:600;color:var(--demo-color,#2563eb)}
.phantaso-demo-card.is-loading{opacity:.65;pointer-events:none}
.phantaso-demo-card.is-active{border-color:var(--demo-color,#2563eb);box-shadow:0 0 0 2px color-mix(in srgb,var(--demo-color,#2563eb) 20%,transparent)}
