/* =============================================================================
 * ogace-footer-restyle.css — deep restyle of the OGACE footer (v109131).
 * Loads AFTER ogace-ai-plugin.css and overrides every .ogama-foot* class.
 * Scoped entirely under .ogama-footer so nothing leaks. Reuses --ogama-* vars
 * with fallbacks, and adds a footer-local G0→G4 spectrum accent.
 * ========================================================================== */

.ogama-footer{
	--ft-bg:        #070b10;
	--ft-bg2:       #0c131b;
	--ft-line:      rgba(140,170,190,.14);
	--ft-line2:     rgba(140,170,190,.08);
	--ft-ink:       #c7d6e0;
	--ft-ink-dim:   #7f95a4;
	--ft-ink-bright:#eef5fa;
	--ft-gold:      var(--ogama-gold, #f2b736);
	--ft-mono:      var(--ogama-font-m, ui-monospace, SFMono-Regular, Menlo, monospace);
	--g0:#26c6da; --g1:#66bb6a; --g2:#ab47bc; --g3:#ffa726; --g4:#ef5350;

	position: relative;
	background:
		radial-gradient(1200px 240px at 50% -40px, rgba(38,198,218,.06), transparent 60%),
		linear-gradient(180deg, var(--ft-bg2), var(--ft-bg));
	color: var(--ft-ink);
	border-top: 1px solid var(--ft-line);
}
/* G0→G4 spectrum hairline across the very top */
.ogama-footer::before{
	content:""; position:absolute; top:0; left:0; right:0; height:2px;
	background: linear-gradient(90deg, var(--g0), var(--g1), var(--g2), var(--g3), var(--g4));
	opacity:.9;
}

.ogama-footer .ogama-footer-inner{
	max-width: 1180px; margin: 0 auto; padding: 34px 22px 26px;
}
.ogama-footer a{ color: var(--ft-ink); text-decoration: none; transition: color .15s ease, opacity .15s ease; }
.ogama-footer a:hover{ color: var(--ft-gold); }

/* ── Top band: brand · stats · version · social ─────────────────────── */
.ogama-footer .ogama-foot-head{
	display: grid; grid-template-columns: 1fr auto; gap: 18px 24px;
	align-items: start; padding-bottom: 20px; margin-bottom: 22px;
	border-bottom: 1px solid var(--ft-line);
}
.ogama-footer .ogama-foot-brand{ display: flex; flex-direction: column; gap: 8px; }
.ogama-footer .ogama-foot-brand-tx{
	font-family: var(--ogama-font-d, inherit); font-size: 23px; font-weight: 800; letter-spacing: .2px;
	color: var(--ft-ink-bright); line-height: 1.05;
}
.ogama-footer .ogama-foot-brand-sub{ font-family: var(--ft-mono); font-size: 12px; color: var(--ft-gold); }
.ogama-footer .ogama-foot-stats{ display: inline-flex; flex-wrap: wrap; gap: 6px; font-size: 12px; color: var(--ft-ink-dim); }
.ogama-footer .ogama-foot-stats strong{
	color: var(--ft-ink-bright); font-weight: 700;
	background: rgba(242,183,54,.10); border: 1px solid rgba(242,183,54,.22);
	border-radius: 999px; padding: 1px 9px; font-family: var(--ft-mono);
}
.ogama-footer .ogama-dot{ opacity: .35; }
.ogama-footer .ogama-foot-ver{ font-family: var(--ft-mono); font-size: 11px; color: var(--ft-ink-dim); margin-top: 2px; }

.ogama-footer .ogama-foot-social{ display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.ogama-footer .ogama-soc,
.ogama-footer .ogama-soc-bot{
	display: inline-flex; align-items: center; justify-content: center;
	width: 38px; height: 38px; border-radius: 11px; font-size: 17px; line-height: 1;
	background: rgba(255,255,255,.05); border: 1px solid var(--ft-line);
	transition: transform .14s ease, background .14s ease, border-color .14s ease, box-shadow .14s ease;
}
.ogama-footer .ogama-soc:hover,
.ogama-footer .ogama-soc-bot:hover{
	transform: translateY(-2px);
	background: rgba(38,198,218,.14); border-color: rgba(38,198,218,.5);
	box-shadow: 0 6px 18px -8px rgba(38,198,218,.6);
}
.ogama-footer .ogama-soc-bot{ background: rgba(171,71,188,.16); border-color: rgba(171,71,188,.4); }

/* ── Column grid: Pages/Shop · AI/APIs/Legal · … ────────────────────── */
.ogama-footer .ogama-foot-cols{
	display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	gap: 26px 28px;
}
.ogama-footer .ogama-foot-section{ min-width: 0; }
.ogama-footer .ogama-foot-h,
.ogama-footer h4{
	position: relative; margin: 0 0 12px; padding-bottom: 8px;
	font-family: var(--ft-mono); font-size: 11px; font-weight: 700;
	letter-spacing: .16em; text-transform: uppercase; color: var(--ft-ink-dim);
}
.ogama-footer .ogama-foot-h::after,
.ogama-footer h4::after{
	content:""; position:absolute; left:0; bottom:0; width: 26px; height: 2px; border-radius:2px;
	background: linear-gradient(90deg, var(--g0), var(--g2));
}
.ogama-footer .ogama-foot-h-center{ text-align: center; }
.ogama-footer .ogama-foot-h-center::after{ left: 50%; transform: translateX(-50%); }

.ogama-footer .ogama-foot-list{ list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.ogama-footer .ogama-foot-list li{ margin: 0; }
.ogama-footer .ogama-foot-list a{
	display: flex; align-items: center; gap: 9px;
	padding: 6px 8px; border-radius: 8px; color: var(--ft-ink);
	transition: background .14s ease, color .14s ease, padding .14s ease;
}
.ogama-footer .ogama-foot-list a:hover{ background: rgba(255,255,255,.04); color: var(--ft-ink-bright); padding-left: 12px; }
.ogama-footer .ogama-foot-ic{ width: 20px; text-align: center; flex: none; opacity: .95; }
.ogama-footer .ogama-foot-lb{ min-width: 0; overflow: hidden; text-overflow: ellipsis; }

/* tiny G-layer tag chips inside labels (e.g. "G3","G11") if present */
.ogama-footer .ogama-foot-badge{
	font-family: var(--ft-mono); font-size: 9px; font-weight: 700; color: #0a0f14;
	background: var(--ft-gold); border-radius: 999px; padding: 1px 6px; margin-left: auto; flex: none;
}

/* ── Utility links row (FAQ · Help · Contact · …) ───────────────────── */
.ogama-footer .ogama-foot-help{
	display: flex; flex-wrap: wrap; gap: 6px 18px; justify-content: center;
	margin: 26px 0 4px; padding: 16px 0; border-top: 1px solid var(--ft-line2);
	font-size: 12px; color: var(--ft-ink-dim);
}
.ogama-footer .ogama-foot-help a{ color: var(--ft-ink-dim); }
.ogama-footer .ogama-foot-help a:hover{ color: var(--ft-gold); }

/* ── Knowledge Pillar Nav / synonyms / echoes spine ─────────────────── */
.ogama-footer .ogama-foot-h-center + *,
.ogama-footer [class*="pillar-nav"],
.ogama-footer [class*="synonym"],
.ogama-footer [class*="echo"]{ }
.ogama-footer [class*="pillar-nav"] a,
.ogama-footer [class*="synonym"] a{
	display: inline-flex; align-items: center; gap: 6px;
	padding: 5px 11px; margin: 3px; border-radius: 999px;
	background: rgba(255,255,255,.04); border: 1px solid var(--ft-line);
	font-size: 12px; transition: background .14s ease, border-color .14s ease, transform .14s ease;
}
.ogama-footer [class*="pillar-nav"] a:hover,
.ogama-footer [class*="synonym"] a:hover{
	transform: translateY(-1px); background: rgba(38,198,218,.10); border-color: rgba(38,198,218,.4);
}

/* ── Terminal + copyright bar ───────────────────────────────────────── */
.ogama-footer .ogama-foot-terminal{
	display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px;
	margin-top: 22px; padding: 14px 16px; border-radius: 12px;
	background: #05080c; border: 1px solid var(--ft-line);
	font-family: var(--ft-mono); font-size: 12px; color: var(--ft-ink-dim);
}
.ogama-footer .ogama-foot-terminal code,
.ogama-footer .ogama-foot-terminal .prompt{ color: #7fe7c4; }
.ogama-footer .ogama-foot-terminal a{ color: var(--ft-ink); }

/* ── Doll Pool button (pulse) ───────────────────────────────────────── */
.ogama-footer .ogama-foot-doll-row{ display: flex; justify-content: center; margin-top: 18px; }
.ogama-footer .ogama-doll-pool-btn{
	display: inline-flex; align-items: center; gap: 10px;
	padding: 10px 18px; border-radius: 999px; color: var(--ft-ink-bright);
	background: linear-gradient(90deg, rgba(171,71,188,.22), rgba(38,198,218,.18));
	border: 1px solid rgba(171,71,188,.45);
	transition: transform .14s ease, box-shadow .14s ease;
}
.ogama-footer .ogama-doll-pool-btn:hover{ transform: translateY(-2px); box-shadow: 0 8px 22px -10px rgba(171,71,188,.7); }
.ogama-footer .ogama-doll-pulse{
	width: 9px; height: 9px; border-radius: 50%; background: #ab47bc; flex: none;
	box-shadow: 0 0 0 0 rgba(171,71,188,.6); animation: ogama-doll-pulse 1.8s infinite;
}
@keyframes ogama-doll-pulse{
	0%{ box-shadow: 0 0 0 0 rgba(171,71,188,.55); }
	70%{ box-shadow: 0 0 0 10px rgba(171,71,188,0); }
	100%{ box-shadow: 0 0 0 0 rgba(171,71,188,0); }
}
@media (prefers-reduced-motion: reduce){ .ogama-footer .ogama-doll-pulse{ animation: none; } }

/* ── Responsive ─────────────────────────────────────────────────────── */
@media (max-width: 720px){
	.ogama-footer .ogama-foot-head{ grid-template-columns: 1fr; }
	.ogama-footer .ogama-foot-social{ justify-content: flex-start; }
	.ogama-footer .ogama-footer-inner{ padding: 26px 16px 22px; }
}
