:root{--bg:#090c11;--panel:#111722;--panel2:#171e2a;--line:#293446;--text:#f3f5f8;--soft:#c6ceda;--muted:#8f9aae;--accent:#9d8cff;--accent2:#63c8ff;--good:#7de4a3;--danger:#ff7b88;--warn:#f4c66a;--shadow:0 28px 80px rgba(0,0,0,.34)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--text);background:radial-gradient(circle at 10% -10%,rgba(157,140,255,.11),transparent 33rem),radial-gradient(circle at 95% 3%,rgba(99,200,255,.06),transparent 26rem),var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,textarea,select{font:inherit}button{color:inherit}a{color:inherit}.hidden{display:none!important}
.site-header{position:sticky;top:0;z-index:40;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;min-height:72px;padding:10px clamp(14px,3vw,34px);border-bottom:1px solid rgba(255,255,255,.07);background:rgba(9,12,17,.89);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:11px;min-width:max-content;text-decoration:none}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;color:#06080b;background:linear-gradient(145deg,var(--accent),var(--accent2));font-weight:950}.brand strong,.brand small{display:block}.brand strong{letter-spacing:.055em;font-size:.86rem}.brand small{margin-top:2px;color:var(--muted);font-size:.72rem}.top-nav{display:flex;justify-content:center;gap:4px;overflow:auto;scrollbar-width:none}.top-nav button{border:0;border-radius:9px;padding:8px 10px;white-space:nowrap;background:transparent;color:var(--muted);cursor:pointer}.top-nav button:hover{color:#fff;background:var(--panel2)}.header-actions{display:flex;gap:7px}.header-btn{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:9px 11px;cursor:pointer}.header-btn.active{color:var(--good);border-color:rgba(125,228,163,.35)}
.author-bar{position:sticky;top:72px;z-index:35;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px clamp(14px,3vw,34px);border-bottom:1px solid rgba(125,228,163,.15);background:rgba(15,38,27,.95);color:#bceccc;backdrop-filter:blur(18px)}.author-bar>div{display:flex;gap:7px;flex-wrap:wrap}.btn{border:1px solid var(--line);border-radius:10px;padding:9px 13px;background:var(--panel2);cursor:pointer;font-weight:750}.btn:hover{border-color:#47566f}.btn.primary{border-color:transparent;color:white;background:linear-gradient(135deg,#8f7cff,#6d91ff)}.btn.danger{color:#ffd8dd;border-color:rgba(255,123,136,.34);background:rgba(255,123,136,.08)}.btn.full{width:100%}.text-btn{display:block;margin:14px auto 0;border:0;background:transparent;color:var(--accent2);cursor:pointer}
.app{width:min(1280px,calc(100% - 30px));margin:auto;padding:clamp(28px,5vw,64px) 0 90px}.hero{min-height:470px;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:center;gap:28px;padding:clamp(34px,6vw,78px);border:1px solid var(--line);border-radius:28px;background:linear-gradient(135deg,rgba(157,140,255,.08),transparent 40%),var(--panel);box-shadow:var(--shadow);overflow:hidden}.eyebrow{margin:0 0 10px;color:#9ba8bb;font-size:.7rem;font-weight:900;letter-spacing:.17em}.hero h1,.page-head h1{margin:0;font-size:clamp(3rem,7vw,6.5rem);line-height:.91;letter-spacing:-.055em}.hero-copy{max-width:680px;color:var(--soft);font-size:1.08rem;line-height:1.75}.search-row{display:flex;gap:9px;max-width:620px;margin-top:28px}.hero-art{position:relative;min-height:320px}.hero-symbol{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:150px;height:150px;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(255,255,255,.04);font-size:4.5rem;box-shadow:0 0 80px rgba(125,140,255,.2)}.orb{position:absolute;border-radius:50%}.orb.one{width:240px;height:240px;top:10%;left:3%;background:radial-gradient(circle,rgba(157,140,255,.35),transparent 70%)}.orb.two{width:220px;height:220px;right:0;bottom:0;background:radial-gradient(circle,rgba(99,200,255,.22),transparent 70%)}.notice{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px;padding:12px 14px;border:1px solid rgba(244,198,106,.3);border-radius:12px;background:rgba(244,198,106,.06);color:#f2d89a}
.home-section{margin-top:58px}.section-head,.page-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:20px}.section-head h2{margin:0;font-size:2rem}.category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.category-card{min-height:170px;display:flex;flex-direction:column;justify-content:space-between;padding:19px;border:1px solid var(--line);border-radius:17px;background:var(--panel);cursor:pointer;transition:.16s}.category-card:hover,.entry-card:hover{transform:translateY(-3px);border-color:#46556c}.category-card h3{margin:18px 0 4px}.category-card p{margin:0;color:var(--muted)}.category-card footer{display:flex;justify-content:space-between;margin-top:14px;color:var(--muted);font-size:.76rem}.category-icon{font-size:1.7rem;color:var(--accent2)}
.entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.entry-card{overflow:hidden;min-height:310px;border:1px solid var(--line);border-radius:18px;background:var(--panel);cursor:pointer;transition:.16s}.entry-image,.entry-placeholder{width:100%;aspect-ratio:16/9}.entry-image{display:block;object-fit:cover}.entry-placeholder{display:grid;place-items:center;background:#101722;color:#617087;font-size:2.5rem}.entry-content{padding:16px 17px 18px}.kicker{color:var(--accent2);font-size:.68rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.entry-card h3{margin:6px 0 4px}.entry-card p{color:var(--muted)}.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.tag,.chip{padding:4px 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.71rem}.chip.redacted{color:#ffb7be}.chip.draft{color:#f3d890}.chip.author{color:#cbbfff}.empty{grid-column:1/-1;padding:54px;border:1px dashed var(--line);border-radius:18px;text-align:center;color:var(--muted)}
.page-head{align-items:center;padding-bottom:25px;border-bottom:1px solid rgba(255,255,255,.07)}.search-box{width:min(360px,100%)}.search-box span,.field>span{display:block;margin-bottom:7px;color:var(--muted);font-size:.76rem;font-weight:800}input,textarea,select{width:100%;border:1px solid var(--line);outline:0;border-radius:10px;padding:10px 11px;color:var(--text);background:#0b0f15}textarea{resize:vertical;line-height:1.55}.muted{color:var(--muted);line-height:1.55}.back-btn{margin-bottom:18px;border:0;background:transparent;color:var(--muted);cursor:pointer}
.article-hero{display:grid;grid-template-columns:minmax(0,1fr) 390px;border:1px solid var(--line);border-radius:24px;background:var(--panel);overflow:hidden;box-shadow:var(--shadow)}.article-title{padding:clamp(30px,5vw,60px)}.article-title h1{margin:5px 0 10px;font-size:clamp(3rem,7vw,6.3rem);line-height:.9;letter-spacing:-.055em}.article-summary{margin-top:25px;color:var(--soft);line-height:1.75}.cover{min-height:420px;background:#0b1016}.cover img{width:100%;height:100%;min-height:420px;max-height:620px;object-fit:cover}.cover-placeholder{display:grid;place-items:center;min-height:420px;color:#536177;font-size:4rem}.credits{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px;color:var(--muted);font-size:.8rem}.credits button{border:0;background:transparent;color:var(--accent2);padding:0;cursor:pointer}.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;margin-top:22px}.toc,.article-section,.infobox,.side-card{border:1px solid var(--line);border-radius:18px;background:var(--panel)}.toc{padding:18px;margin-bottom:18px}.toc h3{margin:0 0 8px}.toc a{display:block;color:var(--muted);text-decoration:none;padding:4px 0}.article-section{position:relative;padding:clamp(22px,4vw,38px);margin-bottom:18px}.article-section h2{margin:0 0 15px;padding-bottom:11px;border-bottom:1px solid rgba(255,255,255,.08)}.article-body{line-height:1.82}.edit-section{position:absolute;right:18px;top:18px}.wiki-link{color:#83d7ff;text-decoration:none}.red-link{color:#ff8f9a;border-bottom:1px dashed currentColor}.spoiler{background:#252b36;color:transparent;padding:1px 4px;border-radius:4px;cursor:pointer}.spoiler.revealed{color:inherit}.redacted-block{display:grid;place-items:center;gap:13px;min-height:118px;padding:18px;border:1px dashed rgba(255,123,136,.32);border-radius:12px;color:#ff9aa4;font-weight:900;letter-spacing:.13em;background:repeating-linear-gradient(135deg,rgba(255,123,136,.025),rgba(255,123,136,.025) 8px,transparent 8px,transparent 16px)}.redacted-lines{display:grid;gap:7px;width:min(320px,90%)}.redacted-line{display:flex;justify-content:center;gap:6px;height:9px}.redacted-line span{display:block;height:9px;max-width:38%;border-radius:2px;background:rgba(214,220,231,.76)}
.infobox,.side-card{overflow:hidden;margin-bottom:18px}.box-title,.side-card h3{margin:0;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.07);font-weight:900}.box-title{background:linear-gradient(135deg,rgba(157,140,255,.18),rgba(99,200,255,.08))}.info-row{display:grid;grid-template-columns:42% 58%;gap:10px;padding:11px 14px;border-top:1px solid rgba(255,255,255,.06);font-size:.88rem}.info-row span:first-child{color:var(--muted);font-weight:800}.side-content{padding:14px}.relationship-list{display:grid;gap:9px}.relationship{position:relative;padding:10px;border:1px solid rgba(255,255,255,.06);border-radius:11px;background:#0d1118}.relationship strong{cursor:pointer}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.gallery-item{position:relative;aspect-ratio:1;overflow:hidden;border-radius:10px;background:#0d1118}.gallery-item img{width:100%;height:100%;object-fit:cover}.small-delete{position:absolute;right:6px;top:6px;width:28px;height:28px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:rgba(0,0,0,.65)}
.history-list{display:grid;gap:12px}.history-row{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.version{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--panel2);font-weight:900}.history-row h3{margin:0}.history-meta{color:var(--muted);font-size:.82rem}.revision-section{padding:16px;border:1px solid var(--line);border-radius:12px;background:#0d1118;margin:10px 0}
.admin-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:18px}.panel{padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}.panel h2{margin-top:0}.panel-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.panel-head input{max-width:300px}.filters{display:flex;gap:8px;margin:12px 0}.filters select{max-width:200px}.admin-side{display:grid;gap:18px;align-content:start}.user-list{display:grid;gap:8px}.user-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:#0d1118}.user-row small{display:block;color:var(--muted);margin-top:4px}.role{display:inline-block;padding:3px 7px;border:1px solid var(--line);border-radius:999px;font-size:.7rem;text-transform:uppercase}.toggle-row{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:12px 0;border-top:1px solid rgba(255,255,255,.06)}.toggle-row input{width:auto}.toggle-row small{display:block;color:var(--muted);margin-top:3px}.audit-list{display:grid;gap:8px;max-height:470px;overflow:auto}.audit-item{padding:10px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:#0d1118;font-size:.8rem}.account-card{max-width:680px;padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}.account-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.modal{width:min(760px,calc(100vw - 24px));max-height:90vh;overflow:auto;border:1px solid var(--line);border-radius:19px;padding:0;color:var(--text);background:var(--panel);box-shadow:var(--shadow)}.modal::backdrop{background:rgba(0,0,0,.72)}.modal form,.dialog-body{padding:25px}.modal.compact{width:min(440px,calc(100vw - 24px))}.modal.editor{width:min(900px,calc(100vw - 24px))}.close{float:right;width:36px;height:36px;border:0;border-radius:9px;background:var(--panel2);font-size:1.3rem}.field{display:block;margin:15px 0}.field small{display:block;color:var(--muted);margin-top:5px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.form-grid .field{margin:0}.check{display:flex;gap:8px;align-items:center}.check input{width:auto}.dialog-actions{display:grid;grid-template-columns:auto 1fr auto auto;gap:9px;align-items:center;margin-top:20px}.error{padding:10px 12px;border:1px solid rgba(255,123,136,.3);border-radius:10px;color:#ffc1c8;background:rgba(255,123,136,.08)}.turnstile{margin:14px 0;min-height:65px}.toast{position:fixed;right:20px;bottom:20px;z-index:80;padding:12px 15px;border:1px solid var(--line);border-radius:11px;background:#1b2431;box-shadow:var(--shadow)}.site-footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:28px clamp(15px,4vw,48px);border-top:1px solid rgba(255,255,255,.07);color:var(--muted);font-size:.78rem}
@media(max-width:1050px){.category-grid{grid-template-columns:repeat(3,1fr)}.entry-grid{grid-template-columns:repeat(2,1fr)}.article-layout{grid-template-columns:minmax(0,1fr) 300px}.admin-layout{grid-template-columns:1fr}}
@media(max-width:820px){.site-header{grid-template-columns:auto auto}.top-nav{grid-column:1/-1;justify-content:start}.header-actions{justify-self:end}.author-bar{top:110px}.hero{grid-template-columns:1fr}.hero-art{min-height:220px}.category-grid{grid-template-columns:repeat(2,1fr)}.article-hero{grid-template-columns:1fr}.cover{order:-1;min-height:300px}.cover img,.cover-placeholder{min-height:300px}.article-layout{grid-template-columns:1fr}}
@media(max-width:620px){.brand>span:last-child{display:none}.app{width:calc(100% - 20px)}.hero{padding:27px 20px}.hero h1,.page-head h1{font-size:clamp(2.8rem,16vw,4.7rem)}.search-row{flex-direction:column}.category-grid,.entry-grid{grid-template-columns:1fr}.page-head{align-items:stretch;flex-direction:column}.search-box{width:100%}.form-grid{grid-template-columns:1fr}.author-bar{top:110px;align-items:stretch;flex-direction:column}.history-row{grid-template-columns:auto 1fr}.history-row>.btn{grid-column:1/-1}.panel-head{align-items:stretch;flex-direction:column}.panel-head input{max-width:none}.filters{flex-direction:column}.filters select{max-width:none}.user-row{grid-template-columns:1fr}}


/* =========================================================
   UTANAPY V1.1 — OFFICIAL-SITE HOMEPAGE
   Public identity is UTANAPY. "Wiki" remains an internal tool concept.
   ========================================================= */

.site-header{
  min-height:76px;
  padding-inline:clamp(20px,4vw,58px);
  background:rgba(7,10,15,.82);
}
.brand{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:1px;
}
.brand-mark{display:none}
.brand-word{
  font-size:1.05rem;
  font-weight:950;
  letter-spacing:.20em;
  line-height:1;
}
.brand small{
  margin:5px 0 0;
  font-size:.56rem;
  letter-spacing:.22em;
  color:#6f7c90;
}
.top-nav button{
  border-radius:0;
  padding:10px 12px;
  font-size:.82rem;
}
.header-btn{
  background:transparent;
  border-color:rgba(255,255,255,.09);
}
.app{
  width:min(1440px,calc(100% - 42px));
  padding-top:clamp(18px,3vw,38px);
}

.official-hero{
  position:relative;
  isolation:isolate;
  display:flex;
  align-items:flex-end;
  min-height:min(76vh,820px);
  padding:clamp(46px,8vw,112px);
  border:1px solid rgba(255,255,255,.09);
  border-radius:4px;
  background:
    radial-gradient(circle at 78% 34%,rgba(103,122,255,.12),transparent 25rem),
    radial-gradient(circle at 70% 66%,rgba(68,175,212,.07),transparent 28rem),
    linear-gradient(120deg,#111722 0%,#0d131c 45%,#080c12 100%);
  box-shadow:none;
}
.hero-atmosphere{
  position:absolute;
  inset:0;
  z-index:-1;
  overflow:hidden;
  opacity:.65;
}
.hero-atmosphere::before{
  content:"";
  position:absolute;
  width:68vw;
  height:68vw;
  max-width:920px;
  max-height:920px;
  right:-19%;
  top:-46%;
  border:1px solid rgba(255,255,255,.07);
  border-radius:50%;
  box-shadow:
    0 0 0 86px rgba(255,255,255,.013),
    0 0 0 180px rgba(255,255,255,.009);
}
.hero-atmosphere::after{
  content:"";
  position:absolute;
  right:8%;
  bottom:13%;
  width:min(40vw,560px);
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(165,188,225,.5),transparent);
  transform:rotate(-19deg);
  box-shadow:0 36px 0 rgba(165,188,225,.08),0 -48px 0 rgba(165,188,225,.05);
}
.official-hero-copy{
  position:relative;
  z-index:2;
  width:min(850px,88%);
}
.official-hero .eyebrow{
  color:#93a4c3;
  font-size:.68rem;
  letter-spacing:.28em;
}
.official-hero h1{
  margin:.02em 0 .18em;
  font-size:clamp(5rem,14vw,12.5rem);
  line-height:.74;
  letter-spacing:-.075em;
  font-weight:900;
}
.official-hero .hero-copy{
  width:min(660px,100%);
  margin:30px 0 0;
  font-size:clamp(1rem,1.4vw,1.2rem);
  color:#aeb8c8;
}
.hero-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:34px;
}
.hero-cta{
  display:inline-flex;
  align-items:center;
  min-height:45px;
  text-decoration:none;
}
.hero-text-action,.section-link{
  border:0;
  padding:10px 5px;
  background:transparent;
  color:#9ab9e8;
  cursor:pointer;
  font-weight:750;
}
.hero-text-action:hover,.section-link:hover{color:white}
.hero-signature{
  position:absolute;
  right:clamp(28px,5vw,74px);
  bottom:clamp(28px,5vw,58px);
  display:flex;
  gap:13px;
  align-items:center;
  color:#68758a;
  font-size:.62rem;
  letter-spacing:.18em;
}
.signature-line{
  display:block;
  width:64px;
  height:1px;
  background:#536078;
}
.visually-hidden{
  position:absolute!important;
  width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}

.home-section{
  margin-top:clamp(72px,9vw,128px);
}
.section-head{
  align-items:flex-end;
  padding-bottom:18px;
  border-bottom:1px solid rgba(255,255,255,.085);
}
.section-head h2{
  font-size:clamp(2rem,4vw,4rem);
  letter-spacing:-.045em;
}
.featured-grid .entry-card:first-child{
  grid-column:span 2;
}
.featured-grid .entry-card:first-child .entry-image,
.featured-grid .entry-card:first-child .entry-placeholder{
  aspect-ratio:2/1;
}
.official-category-grid{
  gap:0;
  border-top:1px solid rgba(255,255,255,.08);
}
.official-category-grid .category-card{
  min-height:210px;
  border:0;
  border-right:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.07);
  border-radius:0;
  background:transparent;
  padding:25px;
}
.official-category-grid .category-card:nth-child(4n){border-right:0}
.official-category-grid .category-card:hover{
  transform:none;
  background:rgba(255,255,255,.025);
  border-color:rgba(255,255,255,.10);
}
.official-category-grid .category-icon{
  font-size:1.35rem;
  color:#8ba6d3;
}
.official-category-grid .category-card h3{
  margin-top:42px;
  font-size:1.45rem;
  letter-spacing:-.02em;
}
.official-category-grid .category-card p{
  font-size:.84rem;
  line-height:1.55;
}
.entry-card{
  border-radius:4px;
  background:#0e141d;
}
.entry-card:hover{
  transform:translateY(-2px);
  border-color:#3a485d;
}
.notice{
  width:max-content;
  max-width:100%;
}

@media(max-width:1050px){
  .featured-grid .entry-card:first-child{grid-column:auto}
  .official-category-grid .category-card:nth-child(4n){border-right:1px solid rgba(255,255,255,.07)}
  .official-category-grid .category-card:nth-child(3n){border-right:0}
}
@media(max-width:820px){
  .official-hero{min-height:650px;padding:48px 30px}
  .official-hero-copy{width:100%}
  .hero-signature{display:none}
  .official-category-grid .category-card:nth-child(3n){border-right:1px solid rgba(255,255,255,.07)}
  .official-category-grid .category-card:nth-child(2n){border-right:0}
}
@media(max-width:620px){
  .brand>small{display:none}
  .brand-word{font-size:.9rem}
  .app{width:calc(100% - 20px)}
  .official-hero{min-height:570px;padding:38px 22px}
  .official-hero h1{font-size:clamp(4.1rem,23vw,7rem)}
  .hero-actions{align-items:stretch;flex-direction:column}
  .hero-cta,.hero-text-action{justify-content:center;width:100%}
  .official-category-grid{grid-template-columns:1fr}
  .official-category-grid .category-card{border-right:0!important}
}


/* =========================================================
   UTANAPY V1.2 — QUIETER OFFICIAL HOMEPAGE
   Branding is intentionally restrained; content/art gets the space.
   ========================================================= */

.brand{
  display:block;
}
.brand-word{
  font-size:.96rem;
  letter-spacing:.18em;
}

.official-hero{
  display:grid;
  grid-template-columns:minmax(0, .86fr) minmax(260px, 1.14fr);
  align-items:center;
  min-height:clamp(480px,62vh,650px);
  padding:clamp(42px,6vw,86px);
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 42%,rgba(103,122,255,.075),transparent 23rem),
    linear-gradient(118deg,#111722 0%,#0d131c 48%,#090d13 100%);
}

.official-hero-copy{
  width:min(610px,100%);
  align-self:center;
}

.official-hero h1{
  margin:0;
  font-size:clamp(3.8rem,7.5vw,7.5rem);
  line-height:.9;
  letter-spacing:-.06em;
  font-weight:850;
}

.official-hero .hero-copy{
  width:min(560px,100%);
  margin:24px 0 0;
  font-size:clamp(.98rem,1.2vw,1.12rem);
  line-height:1.7;
  color:#9ca9bc;
}

.hero-actions{
  margin-top:30px;
  gap:20px;
}

.hero-cta{
  min-height:43px;
  padding-inline:20px;
}

.hero-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#9ab2d6;
  text-decoration:none;
  font-weight:750;
  font-size:.92rem;
}
.hero-link:hover{color:#fff}

.hero-visual-space{
  min-height:300px;
}

.hero-atmosphere{
  opacity:.42;
}
.hero-atmosphere::before{
  width:56vw;
  height:56vw;
  right:-18%;
  top:-38%;
  border-color:rgba(255,255,255,.045);
  box-shadow:
    0 0 0 95px rgba(255,255,255,.008),
    0 0 0 190px rgba(255,255,255,.005);
}
.hero-atmosphere::after{
  opacity:.45;
  right:5%;
  bottom:22%;
}

.home-section{
  margin-top:clamp(58px,7vw,94px);
}

.featured-section{
  margin-top:clamp(54px,6vw,84px);
}

@media(max-width:820px){
  .official-hero{
    grid-template-columns:1fr;
    min-height:530px;
    padding:44px 30px;
  }
  .official-hero-copy{
    align-self:end;
  }
  .hero-visual-space{
    display:none;
  }
}

@media(max-width:620px){
  .official-hero{
    min-height:500px;
    padding:34px 22px;
  }
  .official-hero h1{
    font-size:clamp(3.6rem,19vw,5.5rem);
  }
  .hero-actions{
    flex-direction:row;
    align-items:center;
  }
  .hero-cta{
    width:auto;
  }
  .hero-link{
    width:auto;
  }
}


/* =========================================================
   UTANAPY V1.3 — OWNER SITE DESIGN STUDIO
   Published values are stored in D1 site_settings and applied at runtime.
   ========================================================= */
:root{
  --design-accent:#8174ff;
  --design-background:#090c11;
  --design-width:1440px;
  --design-radius:4px;
  --design-hero-height:560px;
  --design-hero-title-size:104px;
}
body{background:radial-gradient(circle at 10% -10%,color-mix(in srgb,var(--design-accent) 11%,transparent),transparent 33rem),radial-gradient(circle at 95% 3%,rgba(99,200,255,.05),transparent 26rem),var(--design-background)}
.app{width:min(var(--design-width),calc(100% - 42px))}
.btn.primary{background:var(--design-accent)}
.text-btn,.wiki-link,.credits button,.hero-link,.section-link,.kicker,.category-icon{color:color-mix(in srgb,var(--design-accent) 70%,white)}
.official-hero{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  min-height:var(--design-hero-height);
  border-radius:var(--design-radius);
}
.official-hero-copy{grid-column:1 / span 6;align-self:center;width:100%;max-width:680px;margin:0}
.official-hero[data-content-position="center"] .official-hero-copy{grid-column:3 / span 8;justify-self:center;max-width:800px}
.official-hero[data-content-position="right"] .official-hero-copy{grid-column:7 / span 6;justify-self:end}
.official-hero[data-vertical="top"] .official-hero-copy{align-self:start}
.official-hero[data-vertical="bottom"] .official-hero-copy{align-self:end}
.official-hero[data-text-align="center"] .official-hero-copy{text-align:center}
.official-hero[data-text-align="right"] .official-hero-copy{text-align:right}
.official-hero h1{font-size:clamp(2.8rem,9vw,var(--design-hero-title-size))}
.official-hero[data-button-align="left"] .hero-actions{justify-content:flex-start}
.official-hero[data-button-align="center"] .hero-actions{justify-content:center}
.official-hero[data-button-align="right"] .hero-actions{justify-content:flex-end}
.official-hero[data-button-layout="stack"] .hero-actions{flex-direction:column;align-items:stretch;width:max-content;max-width:100%}
.official-hero[data-button-layout="stack"][data-button-align="center"] .hero-actions{margin-inline:auto}
.official-hero[data-button-layout="stack"][data-button-align="right"] .hero-actions{margin-left:auto}
.official-hero[data-button-size="small"] .hero-cta{min-height:36px;padding:7px 14px;font-size:.82rem}
.official-hero[data-button-size="small"] .hero-link{font-size:.82rem}
.official-hero[data-button-size="large"] .hero-cta{min-height:54px;padding:13px 25px;font-size:1.02rem}
.official-hero[data-button-size="large"] .hero-link{font-size:1rem}
.design-hidden{display:none!important}

.design-page-head{align-items:flex-end}
.design-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr);gap:24px;align-items:start}
.design-controls{display:grid;gap:18px}
.design-panel{padding:22px}
.design-panel .panel-head{margin-bottom:18px}
.design-panel .panel-head h2{margin:0}
.design-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.design-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.design-cta-box{margin-top:14px;padding:14px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.018)}
.field-help{margin:8px 0 0;color:var(--muted);font-size:.76rem;line-height:1.55}
.field output{float:right;color:var(--soft);font-weight:800}
.field input[type="range"]{padding:0;border:0;background:transparent;accent-color:var(--design-accent)}
.color-field input[type="color"]{height:48px;padding:5px;cursor:pointer}
.design-section-list{display:grid;gap:9px;margin-top:14px}
.design-section-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:#0d1219}
.design-section-toggle{display:flex;align-items:center;gap:11px;flex:1}
.design-section-toggle input{width:auto}
.design-section-toggle strong,.design-section-toggle small{display:block}
.design-section-toggle small{margin-top:2px;color:var(--muted);font-size:.72rem}
.section-move{display:flex;gap:6px}.icon-btn{width:38px;padding:7px}.icon-btn:disabled{opacity:.28;cursor:not-allowed}
.design-savebar{position:sticky;bottom:12px;z-index:5;display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;padding:12px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(12,16,23,.92);backdrop-filter:blur(16px);box-shadow:0 18px 50px rgba(0,0,0,.35)}
.design-preview-sticky{position:sticky;top:94px}
.preview-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:10px}.preview-head strong{font-size:1.05rem}.preview-head .eyebrow{margin-bottom:3px}
.design-preview{--preview-accent:#8174ff;overflow:hidden;padding:16px;border:1px solid rgba(255,255,255,.10);border-radius:15px;box-shadow:var(--shadow)}
.preview-brand{padding:3px 2px 13px;color:#e8edf5;font-weight:950;letter-spacing:.18em;font-size:.68rem}
.preview-hero{display:flex;align-items:center;min-height:280px;padding:30px;border:1px solid rgba(255,255,255,.07);background:radial-gradient(circle at 80% 25%,color-mix(in srgb,var(--preview-accent) 12%,transparent),transparent 12rem),#101722}
.preview-hero[data-position="left"]{justify-content:flex-start}.preview-hero[data-position="center"]{justify-content:center}.preview-hero[data-position="right"]{justify-content:flex-end}
.preview-hero[data-vertical="top"]{align-items:flex-start}.preview-hero[data-vertical="center"]{align-items:center}.preview-hero[data-vertical="bottom"]{align-items:flex-end}
.preview-copy{width:min(78%,520px)}.preview-copy h2{margin:0;line-height:.88;letter-spacing:-.06em}.preview-copy p{margin:16px 0 0;color:#9da9bb;line-height:1.55;font-size:.85rem}
.preview-actions{display:flex;gap:10px;align-items:center;margin-top:20px}.preview-actions[data-align="left"]{justify-content:flex-start}.preview-actions[data-align="center"]{justify-content:center}.preview-actions[data-align="right"]{justify-content:flex-end}.preview-actions[data-layout="stack"]{flex-direction:column;align-items:stretch}.preview-actions[data-size="small"]{font-size:.72rem}.preview-actions[data-size="large"]{font-size:.95rem}
.preview-primary{display:inline-block;padding:9px 13px;border-radius:8px;background:var(--preview-accent);color:white;font-weight:800}.preview-secondary{color:#b4c4dc;font-weight:750}
.preview-sections{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.preview-section{min-height:66px;display:grid;place-items:center;padding:8px;border:1px solid rgba(255,255,255,.07);border-radius:8px;background:#10151d;color:#a9b5c6;font-size:.72rem;font-weight:800;text-align:center}
.setting-status{display:block;margin-top:4px;color:var(--muted)!important}.setting-status.warn{color:var(--warn)!important}.setting-status.good{color:var(--good)!important}

@media(max-width:1080px){.design-layout{grid-template-columns:1fr}.design-preview-sticky{position:static}.design-preview-column{order:-1}.design-preview{max-width:760px}.official-hero-copy{grid-column:1 / span 8}.official-hero[data-content-position="right"] .official-hero-copy{grid-column:5 / span 8}.official-hero[data-content-position="center"] .official-hero-copy{grid-column:2 / span 10}}
@media(max-width:760px){.design-two,.design-three{grid-template-columns:1fr}.design-savebar{grid-template-columns:1fr 1fr}.design-savebar>span{display:none}.design-savebar .btn{width:100%}.official-hero,.official-hero[data-content-position="center"],.official-hero[data-content-position="right"]{display:block;min-height:min(var(--design-hero-height),620px)}.official-hero-copy{max-width:100%;margin:0}.official-hero[data-text-align="right"] .official-hero-copy{text-align:left}.official-hero[data-button-align="right"] .hero-actions{justify-content:flex-start}.preview-copy{width:100%}}

/* Design radius also applies to homepage content cards. */
#homeView .entry-card,#homeView .category-card{border-radius:var(--design-radius)}


/* =========================================================
   UTANAPY V1.4 — OWNER EDIT LOCK
   ========================================================= */
.page-head-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.owner-edit-lock{
  width:min(620px,100%);
  margin:28px auto 0;
  padding:clamp(26px,5vw,46px);
  text-align:left;
}
.owner-edit-lock h2{margin:.25rem 0 .65rem;font-size:clamp(1.8rem,3vw,2.5rem)}
.owner-lock-icon{
  display:grid;place-items:center;
  width:46px;height:46px;margin-bottom:24px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:50%;color:var(--design-accent,#8174ff);
  background:rgba(255,255,255,.025)
}
.owner-edit-unlock-form{display:grid;gap:12px;margin-top:24px}
.owner-edit-unlock-form .btn{justify-self:start}
@media(max-width:620px){.design-page-head{align-items:flex-start}.page-head-actions{justify-content:flex-start}.owner-edit-unlock-form .btn{width:100%}}


/* =========================================================
   UTANAPY V1.5 — DIRECT VISUAL EDITOR
   ========================================================= */
.design-workspace{display:grid;gap:24px}
.design-fine-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-top:18px;padding-top:26px;border-top:1px solid rgba(255,255,255,.08)}
.design-fine-head h2{margin:.15rem 0 0;font-size:1.7rem}.design-fine-head>p{max-width:620px;text-align:right}
.visual-editor-panel{padding:0;overflow:hidden;border-color:rgba(129,116,255,.22);box-shadow:0 20px 70px rgba(0,0,0,.24)}
.visual-editor-top{display:flex;justify-content:space-between;align-items:end;gap:24px;padding:24px 26px;border-bottom:1px solid rgba(255,255,255,.075)}
.visual-editor-top h2{margin:.18rem 0 .35rem;font-size:clamp(1.7rem,3vw,2.5rem)}.visual-editor-top p.muted{max-width:720px;margin:0}
.visual-layout-toggle{display:flex;align-items:center;gap:11px;min-width:215px;padding:11px 13px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:#0d1219;cursor:pointer}.visual-layout-toggle input{width:auto}.visual-layout-toggle strong,.visual-layout-toggle small{display:block}.visual-layout-toggle small{margin-top:2px;color:var(--muted);font-size:.7rem;line-height:1.35}
.visual-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 16px;background:#0a0f16;border-bottom:1px solid rgba(255,255,255,.07)}
.visual-device-switch{display:flex;padding:3px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#070b10}.visual-device-btn{border:0;border-radius:7px;padding:8px 13px;background:transparent;color:#8491a5;font-weight:800;cursor:pointer}.visual-device-btn.active{background:#171e2b;color:white;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.visual-toolbar-actions{display:flex;gap:7px}.visual-toolbar-actions .btn{padding:8px 11px;font-size:.78rem}
.visual-editor-grid{display:grid;grid-template-columns:minmax(0,1fr) 250px;min-height:650px;background:#080c12}
.visual-canvas-scroll{overflow:auto;padding:24px;background:radial-gradient(circle at 30% 0%,rgba(129,116,255,.07),transparent 36rem),#080c12}
.visual-canvas{width:100%;max-width:1180px;min-width:780px;margin:0 auto;border:1px solid rgba(255,255,255,.12);background:var(--design-background,#090c11);box-shadow:0 30px 90px rgba(0,0,0,.42);transition:max-width .2s ease}
.visual-canvas[data-device="tablet"]{max-width:820px;min-width:680px}.visual-canvas[data-device="mobile"]{max-width:390px;min-width:390px}
.visual-canvas-header{height:56px;display:flex;align-items:center;gap:24px;padding:0 24px;border-bottom:1px solid rgba(255,255,255,.075);background:#080c12;color:#8290a4;font-size:.68rem}.visual-brand{margin-right:auto;color:#f0f3f8;font-weight:950;letter-spacing:.18em}.visual-fake-nav{display:flex;gap:20px}.visual-fake-account{padding:7px 10px;border:1px solid rgba(255,255,255,.09);border-radius:8px}
.visual-canvas[data-device="tablet"] .visual-fake-nav span:nth-child(n+4){display:none}.visual-canvas[data-device="mobile"] .visual-fake-nav{display:none}.visual-canvas[data-device="mobile"] .visual-canvas-header{padding:0 14px}
.visual-canvas-hero{position:relative;isolation:isolate;height:560px;overflow:hidden;background:radial-gradient(circle at 78% 42%,color-mix(in srgb,var(--design-accent,#8174ff) 8%,transparent),transparent 23rem),linear-gradient(118deg,#111722 0%,#0d131c 48%,#090d13 100%);touch-action:none}
.visual-canvas-atmosphere{position:absolute;inset:0;pointer-events:none;opacity:.38;background:radial-gradient(circle at 84% 25%,transparent 0 18%,rgba(255,255,255,.045) 18.2% 18.35%,transparent 18.55% 100%)}
.visual-edit-item{position:absolute;display:flex;align-items:center;box-sizing:border-box;min-width:30px;min-height:24px;outline:1px solid transparent;cursor:grab;user-select:none;touch-action:none;color:#f2f4f8;line-height:1;z-index:4}.visual-edit-item:hover{outline-color:rgba(130,166,255,.6);background:rgba(110,139,220,.04)}.visual-edit-item.selected{outline:2px solid #70a2ff;background:rgba(76,126,224,.075);box-shadow:0 0 0 1px rgba(5,9,15,.8)}.visual-edit-item:active{cursor:grabbing}
#visualItemTitle{font-weight:850;letter-spacing:-.06em;white-space:nowrap}#visualItemTagline{line-height:1.55;color:#9eabc0}.visual-button-item{justify-content:center;border-radius:8px;font-weight:800;white-space:nowrap}.visual-button-item.primary{background:var(--design-accent,#8174ff);color:#fff}.visual-button-item.secondary{color:color-mix(in srgb,var(--design-accent,#8174ff) 72%,white)}
.visual-resize-handle{position:absolute;right:-7px;bottom:-7px;width:14px;height:14px;padding:0;border:2px solid #08101d;border-radius:3px;background:#80aaff;cursor:nwse-resize;opacity:0;pointer-events:none}.visual-edit-item.selected .visual-resize-handle{opacity:1;pointer-events:auto}
.visual-hero-resize{position:absolute;z-index:6;left:0;right:0;bottom:0;height:18px;border:0;border-top:1px solid rgba(112,162,255,.45);background:linear-gradient(180deg,transparent,rgba(73,109,177,.14));cursor:ns-resize;color:#a9c7ff;font-size:.62rem;letter-spacing:.04em;opacity:.55}.visual-hero-resize span{position:absolute;right:10px;bottom:3px}.visual-hero-resize:hover{opacity:1;background:rgba(73,109,177,.17)}
.visual-sections-title{display:flex;justify-content:space-between;gap:12px;padding:18px 20px 8px;color:#aab5c5;font-size:.72rem}.visual-sections-title small{color:#657185}.visual-section-stack{display:grid;gap:8px;padding:8px 20px 22px}.visual-section-block{display:flex;align-items:center;gap:12px;min-height:72px;padding:15px;border:1px solid rgba(255,255,255,.08);background:#0e141d;cursor:grab}.visual-section-block div{flex:1}.visual-section-block strong,.visual-section-block small{display:block}.visual-section-block small{margin-top:4px;color:#647186;font-size:.68rem}.visual-section-block.visual-section-off{opacity:.42}.visual-section-block.dragging{opacity:.25}.visual-section-block.drag-over{border-color:#75a4ff;background:#111b2b}.visual-drag-grip{font-size:1.2rem;color:#67758a}
.visual-inspector{padding:20px 17px;border-left:1px solid rgba(255,255,255,.075);background:#0c1119}.visual-inspector-head{min-height:62px}.visual-inspector-head strong{display:block;font-size:1.05rem}.visual-inspector-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.visual-inspector .field{margin-top:10px}.visual-inspector .field input{padding:9px 10px}.visual-inspector-divider{height:1px;margin:20px 0;background:rgba(255,255,255,.08)}

/* Published direct-layout mode. The normal responsive layout remains the fallback. */
.official-hero.visual-layout-active{display:block!important;position:relative;min-height:var(--design-hero-height);padding:0!important;overflow:hidden}
.visual-layout-active .official-hero-copy{display:contents!important;position:static!important;max-width:none!important;width:auto!important;margin:0!important}
.visual-layout-active .hero-actions{display:contents!important;margin:0!important}
.visual-layout-active #homeHeroTitle,.visual-layout-active #homeHeroTagline,.visual-layout-active #homePrimaryCta,.visual-layout-active #homeSecondaryCta{box-sizing:border-box;z-index:3}
.visual-layout-active #homeHeroTitle{line-height:.92;letter-spacing:-.06em;display:flex;align-items:center}
.visual-layout-active #homeHeroTagline{line-height:1.55;display:flex;align-items:center;max-width:none}
.visual-layout-active #homePrimaryCta,.visual-layout-active #homeSecondaryCta{border-radius:8px;white-space:nowrap;text-align:center;text-decoration:none}
.visual-layout-active #homeSecondaryCta{color:color-mix(in srgb,var(--design-accent) 72%,white)}
.visual-layout-active .hero-visual-space{display:none}.visual-layout-active #ownerSetupNotice{position:absolute;left:4%;bottom:3%;z-index:8}

@media(max-width:1040px){.visual-editor-grid{grid-template-columns:1fr}.visual-inspector{border-left:0;border-top:1px solid rgba(255,255,255,.075)}.visual-inspector-grid{grid-template-columns:repeat(4,1fr)}.visual-canvas-scroll{padding:18px}.design-fine-head{align-items:start;flex-direction:column}.design-fine-head>p{text-align:left}}
@media(max-width:760px){.visual-editor-top,.visual-toolbar{align-items:stretch;flex-direction:column}.visual-layout-toggle{min-width:0}.visual-toolbar-actions{flex-wrap:wrap}.visual-canvas-scroll{padding:12px}.visual-inspector-grid{grid-template-columns:1fr 1fr}.visual-editor-grid{min-height:0}}

.visual-toolbar-sep{width:1px;height:28px;margin:0 2px;background:rgba(255,255,255,.10)}
@media(max-width:760px){.visual-toolbar-sep{display:none}}


/* =========================================================
   UTANAPY V1.6 — LIVE SITE EDITOR
   ========================================================= */
.hero-background-image,.hero-background-overlay{position:absolute;inset:0;pointer-events:none}
.hero-background-image{z-index:0;background-repeat:no-repeat;background-position:center;background-size:cover}
.hero-background-overlay{z-index:1;background:rgba(4,7,12,.2)}
.official-hero .hero-atmosphere{z-index:1}.official-hero-copy,.hero-visual-space{position:relative;z-index:2}
.legacy-visual-editor{display:none!important}
.live-editor-callout{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px;border-color:rgba(129,116,255,.24);background:linear-gradient(115deg,rgba(129,116,255,.08),rgba(255,255,255,.018))}
.live-editor-callout h2{margin:.15rem 0 .4rem}.live-editor-callout p{max-width:760px;margin:0}.live-editor-callout-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.design-background-box{display:grid;gap:14px;padding:16px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.015)}.design-background-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.design-background-row>div:first-child{display:grid;gap:4px}.design-background-row small{color:var(--muted)}
.live-edit-launch{border-color:color-mix(in srgb,var(--design-accent) 60%,#2b3546);color:#dcd9ff;background:color-mix(in srgb,var(--design-accent) 10%,transparent)}
.live-editor-toolbar{position:fixed;z-index:10020;left:50%;top:14px;transform:translateX(-50%);display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(940px,calc(100% - 28px));padding:10px 12px 10px 15px;border:1px solid rgba(138,158,210,.35);border-radius:14px;background:rgba(8,12,18,.95);box-shadow:0 18px 55px rgba(0,0,0,.45);backdrop-filter:blur(16px)}
.live-editor-toolbar.hidden{display:none}.live-editor-toolbar-title{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:8px;line-height:1.1}.live-editor-toolbar-title small{grid-column:2;color:#8190a8;font-size:.68rem;margin-top:4px}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--design-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--design-accent) 15%,transparent)}.live-editor-toolbar-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.live-editor-toolbar .btn{min-height:34px;padding:7px 11px;font-size:.78rem}
.live-inspector{position:fixed;z-index:10010;right:16px;top:86px;width:260px;padding:16px;border:1px solid rgba(138,158,210,.28);border-radius:14px;background:rgba(9,13,20,.96);box-shadow:0 18px 55px rgba(0,0,0,.4);backdrop-filter:blur(14px)}.live-inspector.hidden{display:none}.live-inspector-head{display:flex;justify-content:space-between;gap:10px;align-items:start}.live-inspector-head .eyebrow{margin:0 0 3px}.live-inspector-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.live-inspector .field{margin-top:10px}.live-inspector .field input[type=number]{padding:8px 9px}.live-inspector .icon-btn{width:30px;height:30px;padding:0}
.live-site-editing main{padding-top:74px}
.live-editable{outline:1px dashed rgba(116,161,255,.52);outline-offset:5px;transition:outline-color .15s,box-shadow .15s;cursor:grab}.live-editable:hover{outline-color:#76a8ff}.live-editable.live-selected{outline:2px solid #78a9ff;box-shadow:0 0 0 4px rgba(80,133,230,.08)}.live-editable:active{cursor:grabbing}.live-editable .live-move-grip,.live-editable .live-resize-corner{position:absolute;z-index:9999;display:grid;place-items:center;padding:0;border:1px solid #0b1220;background:#78a9ff;color:#07101d;box-shadow:0 3px 12px rgba(0,0,0,.35)}.live-move-grip{left:-9px;top:-9px;width:22px;height:22px;border-radius:6px;cursor:grab;font-size:12px}.live-resize-corner{right:-10px;bottom:-10px;width:18px;height:18px;border-radius:4px;cursor:nwse-resize}.live-resize-corner::after{content:"";width:7px;height:7px;border-right:2px solid #07101d;border-bottom:2px solid #07101d}.live-layout-applied{position:relative}
.hero-background-preview{min-height:150px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#090e16;color:var(--muted)}.hero-background-preview img{width:100%;height:190px;object-fit:cover;display:block}
@media(max-width:900px){.live-editor-toolbar{align-items:stretch;flex-direction:column;gap:8px}.live-editor-toolbar-title{align-self:flex-start}.live-editor-toolbar-actions{width:100%;overflow-x:auto;flex-wrap:nowrap}.live-inspector{top:auto;bottom:12px;right:12px;width:min(320px,calc(100% - 24px))}.live-site-editing main{padding-top:118px}.live-editor-callout{align-items:flex-start;flex-direction:column}.live-editor-callout-actions{justify-content:flex-start}}

.live-editable.live-positioned{position:relative!important}


/* =========================================================
   UTANAPY V1.7 — CANVA-LIKE LIVE EDITING
   ========================================================= */
/* Keep the editor out of the site's header so the header itself can be edited. */
.live-editor-toolbar{top:auto;bottom:14px;z-index:10040}
.live-inspector{top:86px;bottom:auto;width:292px;max-height:calc(100vh - 180px);overflow:auto;z-index:10035}
.live-site-editing main{padding-bottom:88px}
.live-site-editing .site-header.live-editable{z-index:100!important}
.live-style-box{margin-top:12px;padding:11px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.018)}
.live-style-box>strong{display:block;margin-bottom:4px;font-size:.78rem}.compact-check{margin-top:8px;font-size:.76rem}
.live-inline-text{outline:2px solid var(--design-accent)!important;outline-offset:3px;cursor:text!important;user-select:text!important;min-width:1ch}
.live-object-stage{position:relative!important}.live-custom-object{position:absolute!important;left:0;top:0;width:320px;height:220px;min-height:0!important;transform-origin:top left;overflow:hidden}.live-custom-object img{width:100%;height:100%;display:block;object-fit:cover;pointer-events:none}
.live-image-override:not(.live-custom-object)>img,.live-image-override:not(.live-custom-object)>.cover-placeholder{visibility:hidden}
.live-editable[data-live-edit-key="site-header"]{outline-offset:-2px}.live-editable[data-live-edit-key="site-brand"],.live-editable[data-live-edit-key="site-nav"],.live-editable[data-live-edit-key="site-actions"]{outline-offset:2px}
.live-editable[data-live-edit-key="site-header"]>.live-move-grip{left:4px;top:4px}.live-editable[data-live-edit-key="site-header"]>.live-resize-corner{right:4px;bottom:4px}
.live-inspector select{width:100%}.live-inspector input[type=color]{min-height:38px;padding:3px}
@media(max-width:900px){.live-editor-toolbar{bottom:8px}.live-inspector{top:76px;bottom:92px;max-height:none}.live-site-editing main{padding-top:0;padding-bottom:150px}}


/* =========================================================
   UTANAPY V1.8 — FULL SITE BUILDER LAYER
   ========================================================= */
.custom-page-view{min-height:70vh}
.custom-page-canvas{
  position:relative;
  min-height:900px;
  width:100%;
  border:1px solid rgba(255,255,255,.07);
  background:rgba(12,17,25,.48);
  overflow:hidden;
}
.live-site-editing .custom-page-canvas{
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:24px 24px;
}

.builder-dock{
  position:fixed;z-index:10038;left:12px;top:92px;
  width:62px;padding:8px 6px;
  display:flex;flex-direction:column;gap:4px;
  border:1px solid rgba(138,158,210,.28);
  border-radius:14px;background:rgba(9,13,20,.96);
  box-shadow:0 18px 55px rgba(0,0,0,.4);backdrop-filter:blur(14px)
}
.builder-dock.hidden{display:none}
.builder-dock button{
  appearance:none;border:0;background:transparent;color:#a9b5c8;
  min-height:54px;border-radius:9px;padding:6px 2px;cursor:pointer;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px
}
.builder-dock button:hover{background:rgba(255,255,255,.055);color:#fff}
.builder-dock button strong{font-size:1.05rem}.builder-dock button span{font-size:.60rem}
.builder-dock-rule{height:1px;background:rgba(255,255,255,.08);margin:4px 2px}

.builder-panel{
  position:fixed;z-index:10037;left:84px;top:92px;width:340px;
  max-height:calc(100vh - 190px);overflow:auto;
  padding:16px;border:1px solid rgba(138,158,210,.28);border-radius:14px;
  background:rgba(9,13,20,.97);box-shadow:0 18px 55px rgba(0,0,0,.4);backdrop-filter:blur(14px)
}
.builder-panel.hidden{display:none}
.builder-panel-head{display:flex;justify-content:space-between;align-items:start;gap:10px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}
.builder-panel-head h3{margin:1px 0 0;font-size:1.2rem}
.builder-panel-head .eyebrow{margin:0}
.builder-panel-body{padding-top:12px}
.builder-panel-section{margin:18px 0 7px;color:#76869e;letter-spacing:.12em}
.builder-panel-section small{font-size:.62rem}
.builder-empty{padding:15px 4px}
.builder-list-row,.builder-layer-row{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06)
}
.builder-list-row>div:first-child{min-width:0}
.builder-list-row strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.builder-list-row small{display:block;margin-top:3px;color:#75859c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.builder-row-actions{display:flex;gap:4px;flex-shrink:0}
.builder-row-actions .btn,.builder-layer-row .btn{padding:6px 8px;min-height:30px;font-size:.68rem}
.builder-layer-name{border:0;background:transparent;color:#dbe3f1;text-align:left;cursor:pointer;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.builder-layer-name:hover{color:#fff}
.builder-tab-row{align-items:flex-start}

.builder-object{box-sizing:border-box}
.builder-object-text{
  width:100%;height:100%;display:flex;align-items:center;
  white-space:pre-wrap;overflow:hidden;pointer-events:none
}
.live-site-editing .builder-object-text{pointer-events:auto}
.builder-object-box{background:#111722;border:1px solid #354258;border-radius:14px}
.builder-object-button{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:inherit;text-decoration:none;pointer-events:auto}
.live-site-editing .builder-object-button{pointer-events:none}
.builder-object-text,.builder-object-button{font:inherit;color:inherit;text-align:inherit}
.live-custom-object{box-sizing:border-box}
.builder-object-text.live-inline-text{pointer-events:auto}

.builder-inspector-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}
.builder-url-field{display:flex;align-items:center;gap:8px;border:1px solid #28354a;border-radius:9px;padding-left:10px;background:#0a0f16}
.builder-url-field span{color:#74849b;font-size:.78rem;white-space:nowrap}
.builder-url-field input{border:0!important;background:transparent!important;padding-left:0!important}

.live-site-editing main{padding-left:78px}
.live-site-editing .builder-panel:not(.hidden)~*{}
.live-site-editing .live-editor-toolbar{width:min(980px,calc(100% - 180px))}
.live-site-editing .live-inspector{right:12px}

@media(max-width:900px){
  .builder-dock{top:auto;bottom:86px;left:8px;width:auto;max-width:calc(100% - 16px);flex-direction:row;overflow-x:auto}
  .builder-dock button{min-width:52px}
  .builder-dock-rule{width:1px;height:auto}
  .builder-panel{left:8px;right:8px;top:72px;width:auto;max-height:calc(100vh - 230px)}
  .live-site-editing main{padding-left:0}
  .live-site-editing .live-editor-toolbar{width:calc(100% - 16px)}
}


/* =========================================================
   UTANAPY V1.8.2 — CHARACTER / ENTRY PAGE EDITOR FIX
   Split the entry header into individual selectable objects.
   ========================================================= */
.live-site-editing .article-title{
  overflow:visible;
}
.live-site-editing .article-title > [data-live-edit-key]{
  position:relative;
}
.live-site-editing [data-live-edit-key="entry-type-label"],
.live-site-editing [data-live-edit-key="entry-title"],
.live-site-editing [data-live-edit-key="entry-subtitle"],
.live-site-editing [data-live-edit-key="entry-summary"],
.live-site-editing [data-live-edit-key="entry-aliases"],
.live-site-editing [data-live-edit-key="entry-tags"],
.live-site-editing [data-live-edit-key="entry-status"],
.live-site-editing [data-live-edit-key="entry-credits"],
.live-site-editing [data-live-edit-key="entry-author-tools"]{
  outline-offset:3px;
}
.live-site-editing [data-live-edit-key="entry-history-link"]{
  position:relative;
  display:inline-flex;
}
.live-site-editing [data-live-edit-key="entry-contents"]{
  position:relative;
}


/* =========================================================
   UTANAPY V1.9 — INLINE AUTHOR CONTENT EDITOR
   ========================================================= */

.entry-quick-settings{
  display:flex;
  align-items:flex-end;
  flex-wrap:wrap;
  gap:8px;
  margin-top:15px;
}
.inline-setting{
  display:grid;
  gap:4px;
  color:var(--muted);
  font-size:.67rem;
  font-weight:800;
  letter-spacing:.03em;
}
.inline-pill-select{
  appearance:auto;
  min-height:34px;
  padding:6px 28px 6px 10px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#0c121a;
  color:var(--text);
  font:inherit;
  font-size:.78rem;
}
.inline-pill-select:disabled{
  opacity:.78;
  cursor:default;
}
.inline-feature-toggle{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:34px;
  padding:6px 10px;
  border:1px solid var(--line);
  border-radius:999px;
  color:var(--muted);
  font-size:.76rem;
}
.inline-list-editor{
  width:max-content;
  max-width:100%;
  margin-top:10px;
  color:var(--muted);
  font-size:.82rem;
}
.cover{position:relative}
.cover-edit-overlay{
  position:absolute;
  right:14px;
  bottom:14px;
  z-index:3;
  opacity:0;
  padding:9px 13px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:10px;
  background:rgba(7,11,17,.82);
  color:white;
  cursor:pointer;
  backdrop-filter:blur(10px);
  transition:opacity .16s ease;
}
.cover:hover .cover-edit-overlay,
.author-content-editing .cover-edit-overlay{opacity:1}

.section-author-controls{
  position:absolute;
  right:18px;
  top:15px;
  display:flex;
  align-items:center;
  gap:7px;
}
.section-author-controls .inline-pill-select{min-height:32px}
.section-author-controls .btn{min-height:32px;padding:6px 9px;font-size:.72rem}

.author-click-editable{
  position:relative;
  cursor:text;
  transition:outline-color .15s ease,background .15s ease;
}
.author-click-editable:hover{
  outline:1px dashed color-mix(in srgb,var(--accent) 52%,transparent);
  outline-offset:5px;
  background:color-mix(in srgb,var(--accent) 3%,transparent);
}
.author-click-editable:hover::after{
  content:"click to edit";
  position:absolute;
  z-index:20;
  right:4px;
  top:-21px;
  padding:3px 6px;
  border-radius:5px;
  background:#121a26;
  color:#9cb1d2;
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.05em;
  pointer-events:none;
}
.article-body.author-click-editable:hover::after{top:3px}

.author-inline-field{
  min-width:80px;
  outline:1px solid transparent;
  outline-offset:5px;
  border-radius:4px;
  cursor:text;
}
.author-inline-field:hover,
.author-inline-field:focus{
  outline-color:color-mix(in srgb,var(--accent) 68%,white 5%);
  background:color-mix(in srgb,var(--accent) 4%,transparent);
}
.author-inline-empty::before{
  content:attr(data-empty-placeholder);
  color:#65758d;
  pointer-events:none;
}
.author-inline-list{
  min-width:160px;
  min-height:28px;
  padding:5px 8px;
  border:1px dashed rgba(139,159,202,.30);
  border-radius:8px;
}
.author-content-editing .article-section{
  padding-top:48px;
}
.author-content-editing .article-body{
  white-space:pre-wrap;
}
.author-content-editing .article-section h2{
  min-height:35px;
}
.author-content-editing .entry-quick-settings .inline-pill-select:not(:disabled),
.author-content-editing .inline-feature-toggle{
  border-color:color-mix(in srgb,var(--accent) 42%,var(--line));
}
.author-content-editing .section-fallback-edit{display:none}

.content-edit-toolbar{
  position:fixed;
  z-index:10050;
  left:50%;
  bottom:14px;
  transform:translateX(-50%);
  width:min(980px,calc(100% - 28px));
  display:grid;
  grid-template-columns:auto minmax(180px,1fr) auto;
  align-items:center;
  gap:14px;
  padding:10px 12px 10px 15px;
  border:1px solid rgba(138,158,210,.35);
  border-radius:14px;
  background:rgba(8,12,18,.96);
  box-shadow:0 18px 55px rgba(0,0,0,.48);
  backdrop-filter:blur(16px);
}
.content-edit-toolbar.hidden{display:none}
.content-edit-toolbar-title{
  display:flex;
  align-items:center;
  gap:9px;
  white-space:nowrap;
}
.content-edit-toolbar-title div{display:grid}
.content-edit-toolbar-title small{color:#8190a8;font-size:.66rem;margin-top:2px}
.content-edit-dot{
  width:8px;height:8px;border-radius:50%;
  background:#67d6a4;
  box-shadow:0 0 0 4px rgba(103,214,164,.12);
}
.content-edit-summary{
  display:grid;
  grid-template-columns:auto minmax(100px,1fr);
  align-items:center;
  gap:8px;
  color:#8392aa;
  font-size:.67rem;
}
.content-edit-summary input{
  min-height:34px;
  padding:7px 9px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#090e15;
  color:var(--text);
}
.content-edit-toolbar-actions{display:flex;gap:7px}
.author-content-editing main{padding-bottom:90px}

.infobox-inline-editing{
  padding-bottom:12px;
}
.inline-infobox-list{
  display:grid;
  gap:7px;
  padding:12px 12px 4px;
}
.inline-infobox-row{
  display:grid;
  grid-template-columns:minmax(80px,.8fr) minmax(100px,1.2fr) 32px;
  gap:6px;
}
.inline-infobox-row input{
  width:100%;
  min-width:0;
  padding:8px 9px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#090e15;
  color:var(--text);
}
.inline-info-add{
  margin:6px 12px 0;
  width:calc(100% - 24px);
}

#infoboxFields{
  display:grid;
  gap:8px;
}
.infobox-edit-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) 38px;
  gap:10px;
  align-items:end;
  grid-column:1/-1;
}
.infobox-row-delete{margin-bottom:1px}
.add-infobox-row{grid-column:1/-1;width:max-content}

@media(max-width:820px){
  .content-edit-toolbar{
    grid-template-columns:1fr;
    gap:8px;
    bottom:8px;
  }
  .content-edit-summary{display:none}
  .content-edit-toolbar-actions{
    width:100%;
    overflow-x:auto;
    flex-wrap:nowrap;
  }
  .author-content-editing main{padding-bottom:150px}
  .entry-quick-settings{align-items:stretch}
  .inline-setting{flex:1 1 130px}
  .inline-pill-select{width:100%}
}


/* =========================================================
   UTANAPY V1.9.1 — SPOILER TITLES
   ||spoiler|| now renders in entry titles/cards instead of
   showing the literal pipe characters.
   ========================================================= */
.entry-card h3 .spoiler,
.article-title h1 .spoiler{
  display:inline-block;
  vertical-align:.06em;
  border-radius:.08em;
  padding:0 .08em;
  background:#303744;
  color:transparent;
  user-select:none;
}
.entry-card h3 .spoiler.revealed,
.article-title h1 .spoiler.revealed{
  color:inherit;
  user-select:text;
}
.spoiler:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:2px;
}


/* =========================================================
   UTANAPY V1.10 — VISUAL POLISH / MOTION / DEPTH
   ========================================================= */

/* Buttons: intentionally tiny depth, not chunky skeuomorphism. */
.btn,
.header-btn,
.top-nav button,
.back-btn,
.hero-link,
.section-link{
  transition:
    transform .14s ease,
    box-shadow .14s ease,
    border-color .14s ease,
    background-color .14s ease,
    filter .14s ease,
    opacity .14s ease;
}
.btn,
.header-btn{
  box-shadow:
    0 2px 0 rgba(0,0,0,.28),
    0 4px 10px rgba(0,0,0,.10);
}
.btn:hover,
.header-btn:hover{
  transform:translateY(-1px);
  filter:brightness(1.035);
  box-shadow:
    0 3px 0 rgba(0,0,0,.25),
    0 6px 13px rgba(0,0,0,.13);
}
.btn:active,
.header-btn:active{
  transform:translateY(1px);
  box-shadow:
    0 1px 0 rgba(0,0,0,.28),
    0 2px 6px rgba(0,0,0,.10);
}

/* Pages have their own surface, editable independently from the site base. */
.page-surface{
  background-clip:border-box;
  background-attachment:scroll;
}

/* Per-object motion. Uses individual translate/scale properties so it can
   coexist with the editor's inline transform positioning. */
@keyframes utanapyFadeIn{
  from{opacity:0}
  to{opacity:var(--utanapy-final-opacity,1)}
}
@keyframes utanapyRiseIn{
  from{opacity:0;translate:0 9px}
  to{opacity:var(--utanapy-final-opacity,1);translate:0 0}
}
@keyframes utanapySoftPop{
  from{opacity:0;scale:.985}
  to{opacity:var(--utanapy-final-opacity,1);scale:1}
}
@keyframes utanapyGentleFloat{
  0%,100%{translate:0 0}
  50%{translate:0 -3px}
}
[data-live-animation="fade"]{animation:utanapyFadeIn var(--live-motion-duration,480ms) ease both}
[data-live-animation="rise"]{animation:utanapyRiseIn var(--live-motion-duration,480ms) cubic-bezier(.2,.75,.25,1) both}
[data-live-animation="pop"]{animation:utanapySoftPop var(--live-motion-duration,480ms) cubic-bezier(.2,.8,.2,1) both}
[data-live-animation="float"]{animation:utanapyGentleFloat calc(var(--live-motion-duration,480ms) * 6) ease-in-out infinite}

[data-live-hover="tiny3d"]:hover{
  filter:brightness(1.04);
  box-shadow:
    0 max(2px,var(--live-depth,2px)) 0 rgba(0,0,0,.32),
    0 8px 18px rgba(0,0,0,.15)!important;
}
[data-live-hover="lift"]:hover{
  translate:0 -2px;
  filter:brightness(1.035);
  box-shadow:0 9px 25px rgba(0,0,0,.18)!important;
}
[data-live-hover="glow"]:hover{
  filter:brightness(1.06);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 34%,transparent),0 0 20px color-mix(in srgb,var(--accent) 18%,transparent)!important;
}

/* A bit more ambient life even before custom animations are chosen. */
@media (prefers-reduced-motion:no-preference){
  .entry-card,
  .category-card{
    animation:utanapyRiseIn .34s ease both;
  }
  .entry-grid .entry-card:nth-child(2),
  .category-grid .category-card:nth-child(2){animation-delay:.035s}
  .entry-grid .entry-card:nth-child(3),
  .category-grid .category-card:nth-child(3){animation-delay:.07s}
  .entry-grid .entry-card:nth-child(4),
  .category-grid .category-card:nth-child(4){animation-delay:.105s}
  .article-hero{animation:utanapySoftPop .34s ease both}
}

@media (prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    scroll-behavior:auto!important;
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
  }
}

/* Make auto-selectable built-in controls feel intentional in Edit Page mode. */
.live-site-editing [data-live-auto-tagged="1"]{
  isolation:isolate;
}
.live-site-editing .live-editable.btn,
.live-site-editing .live-editable.header-btn,
.live-site-editing button.live-editable{
  overflow:visible;
}


/* =========================================================
   UTANAPY V1.11 — ONENOTE-LIKE DIRECT EDITING
   ========================================================= */

.author-direct-text,
[data-author-field],
[data-author-list],
[data-author-info-index],
[data-author-section-field]{
  cursor:text;
}
body:not(.live-site-editing) .author-direct-text:hover,
body:not(.live-site-editing) [data-author-field]:hover,
body:not(.live-site-editing) [data-author-list]:hover,
body:not(.live-site-editing) [data-author-info-index]:hover,
body:not(.live-site-editing) [data-author-section-field]:hover{
  outline:1px dashed color-mix(in srgb,var(--accent) 42%,transparent);
  outline-offset:4px;
  border-radius:4px;
}
.author-direct-active{
  position:relative;
  z-index:25;
  outline:2px solid color-mix(in srgb,var(--accent) 72%,white 5%)!important;
  outline-offset:5px;
  border-radius:4px;
  background:color-mix(in srgb,var(--accent) 5%,var(--bg))!important;
  white-space:pre-wrap;
  min-width:2ch;
}
.author-direct-active:focus{caret-color:var(--accent)}
.article-body.author-direct-active{
  min-height:90px;
  padding:8px;
}
.author-list-row .author-direct-text{
  display:inline-block;
  min-width:100px;
  padding:5px 8px;
  border:1px dashed rgba(139,159,202,.22);
  border-radius:8px;
  color:var(--muted);
}

.entry-quick-settings{
  display:flex;
  flex-wrap:wrap;
  align-items:end;
  gap:8px;
  margin-top:14px;
}
.inline-setting{display:grid;gap:4px;font-size:.64rem;color:var(--muted);font-weight:800}
.inline-pill-select{
  min-height:34px;
  padding:6px 28px 6px 10px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#0c121a;
  color:var(--text);
}
.inline-feature-toggle{
  min-height:34px;
  display:flex;align-items:center;gap:7px;
  padding:6px 10px;border:1px solid var(--line);border-radius:999px;
  color:var(--muted);font-size:.76rem;
}
.section-author-controls{
  position:absolute;right:14px;top:12px;
  display:flex;align-items:center;gap:6px;z-index:4;
}
.section-author-controls .btn{min-height:31px;padding:5px 9px}
.section-author-controls .inline-pill-select{min-height:31px;font-size:.7rem}

.author-inline-status{
  position:fixed;
  z-index:10070;
  right:16px;
  bottom:16px;
  padding:8px 12px;
  border:1px solid rgba(138,158,210,.28);
  border-radius:999px;
  background:rgba(8,12,18,.94);
  color:#b8c5d9;
  box-shadow:0 10px 30px rgba(0,0,0,.28);
  font-size:.72rem;
  font-weight:800;
  backdrop-filter:blur(12px);
}
.author-inline-status[data-state="saving"]::before{content:"● ";color:#f0bd6c}
.author-inline-status[data-state="saved"]::before{content:"● ";color:#6ed3a7}
.author-inline-status[data-state="error"]::before{content:"● ";color:#ff7d91}

/* The style inspector is now an optional advanced panel, not the primary
   workflow. Selection itself stays clean. */
.live-inspector{max-height:calc(100% - 105px);overflow:auto}

/* Every editable thing gets a small direct remove/hide control. */
.live-remove-chip{
  position:absolute;
  z-index:10012;
  right:-9px;
  top:-9px;
  width:23px;
  height:23px;
  display:none;
  align-items:center;
  justify-content:center;
  border:1px solid #6a7790;
  border-radius:7px;
  background:#111925;
  color:#bdc9dc;
  cursor:pointer;
  font-size:.9rem;
  line-height:1;
  box-shadow:0 4px 12px rgba(0,0,0,.22);
}
.live-selected > .live-remove-chip{display:flex}
.live-remove-chip:hover{border-color:#ff7d91;color:#fff;background:#3a1821}

/* In V1.11, normal clicks do not drag whole blocks. The little ✥ grip is
   the deliberate drag affordance, leaving text free to behave like text. */
.live-site-editing .live-editable{cursor:default}
.live-site-editing .live-editable [data-author-field],
.live-site-editing .live-editable [data-author-list],
.live-site-editing .live-editable [data-author-info-index],
.live-site-editing .live-editable [data-author-section-field]{cursor:text}

#liveStyleBtn:disabled,
#liveQuickDeleteBtn:disabled{opacity:.4}

/* Fallback giant editor is less ridiculous if it is ever opened. */
#infoboxFields{display:grid;gap:8px}
.infobox-edit-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) 40px;
  gap:8px;
  align-items:end;
  grid-column:1/-1;
}
.infobox-row-delete{margin-bottom:1px}
.add-infobox-row{grid-column:1/-1;width:max-content}

@media(max-width:780px){
  .entry-quick-settings{align-items:stretch}
  .inline-setting{flex:1 1 130px}
  .inline-pill-select{width:100%}
  .section-author-controls{position:static;margin-top:12px;justify-content:flex-end}
}


/* =========================================================
   UTANAPY V1.12 — SECURE INLINE REDACTION
   ========================================================= */

.secure-redaction.locked{
  display:inline-block;
  min-width:7.5em;
  padding:0 .18em;
  border-radius:.16em;
  background:
    repeating-linear-gradient(
      -45deg,
      #323a48 0,
      #323a48 6px,
      #2a313d 6px,
      #2a313d 12px
    );
  color:transparent!important;
  user-select:none;
  letter-spacing:.02em;
  vertical-align:.04em;
}
.secure-redaction.revealed{
  display:inline;
  padding:0 .12em;
  border-bottom:1px dotted color-mix(in srgb,var(--accent) 55%,transparent);
}
.author-selection-toolbar{
  position:fixed;
  z-index:10071;
  left:50%;
  bottom:62px;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:7px;
  max-width:calc(100% - 24px);
  padding:7px;
  border:1px solid rgba(138,158,210,.28);
  border-radius:12px;
  background:rgba(8,12,18,.96);
  box-shadow:0 12px 34px rgba(0,0,0,.32);
  backdrop-filter:blur(14px);
}
.author-selection-toolbar.hidden{display:none}
.author-selection-toolbar span{
  color:#8494ad;
  font-size:.68rem;
  white-space:nowrap;
}
.author-selection-toolbar .btn{
  min-height:32px;
  padding:6px 10px;
  font-size:.72rem;
}
@media(max-width:650px){
  .author-selection-toolbar span{display:none}
}


/* =========================================================
   UTANAPY V1.12.1 — MULTILINE EDIT OUTLINE POLISH
   Fixes fragmented / doubled selection boxes while directly
   editing wrapped titles such as "Light based reality".
   ========================================================= */

/* A multiline editable title should behave like one block, not several
   separate inline line-fragments with their own outline boxes. */
.article-title h1 > .author-direct-text,
.article-title .entry-subtitle > .author-direct-text,
.article-summary > .author-direct-text,
.article-section h2 > .author-direct-text{
  display:block;
  width:100%;
  box-sizing:border-box;
}

/* Keep the editing focus ring around the whole text region. */
.article-title h1 > .author-direct-active{
  min-width:100%;
}

/* When editing text inside a Site Builder-selected object, temporarily
   quiet the parent object's selection chrome. This prevents the blue
   resize box + purple text-edit box from sitting on top of each other. */
.live-site-editing .live-selected:has(.author-direct-active){
  outline-color:transparent!important;
}
.live-site-editing .live-editable:has(.author-direct-active) > .live-move-grip,
.live-site-editing .live-editable:has(.author-direct-active) > .live-resize-corner,
.live-site-editing .live-editable:has(.author-direct-active) > .live-remove-chip{
  opacity:0!important;
  pointer-events:none!important;
}

/* Avoid text-edit outlines being clipped by the entry title area. */
.article-title,
.article-title h1{
  overflow:visible;
}

/* Slightly softer focus ring so direct writing feels more like a document
   editor and less like a layout bounding box. */
.author-direct-active{
  outline-width:1px!important;
  outline-offset:4px!important;
}


/* =========================================================
   UTANAPY V1.12.2 — DIRECT EDIT CARET POLISH
   ========================================================= */
.author-direct-active[contenteditable="true"]{
  caret-color:#f7f9ff!important;
  cursor:text!important;
  user-select:text!important;
  -webkit-user-select:text!important;
}
.author-direct-active[contenteditable="true"] *{
  caret-color:#f7f9ff!important;
}


/* =========================================================
   UTANAPY V1.12.3 — SMOOTH INLINE EDITING
   ========================================================= */

/* Contents links land below the persistent header instead of under it. */
.article-section{
  scroll-margin-top:92px;
}

/* Saving an inline field no longer rebuilds the article, so there should be
   no save-flash / hero re-entry animation / jump-to-top during normal edits. */
.author-direct-text.author-direct-active,
.article-body.author-direct-active{
  will-change:auto;
}


/* =========================================================
   UTANAPY V1.13 — CINEMATIC MOTION POLISH
   Lightweight motion: opacity / translate / scale / clip-path,
   one IntersectionObserver, and full reduced-motion support.
   ========================================================= */

@keyframes utanapySlideLeft{
  from{opacity:0;translate:-24px 0}
  to{opacity:var(--utanapy-final-opacity,1);translate:0 0}
}
@keyframes utanapySlideRight{
  from{opacity:0;translate:24px 0}
  to{opacity:var(--utanapy-final-opacity,1);translate:0 0}
}
@keyframes utanapyWindowReveal{
  from{opacity:.35;clip-path:inset(0 48% 0 48% round max(2px,var(--design-radius,4px)));scale:.995}
  to{opacity:var(--utanapy-final-opacity,1);clip-path:inset(0 0 0 0 round max(2px,var(--design-radius,4px)));scale:1}
}
@keyframes utanapySoftUnfold{
  from{opacity:0;clip-path:inset(0 0 28% 0 round max(2px,var(--design-radius,4px)));translate:0 8px}
  to{opacity:var(--utanapy-final-opacity,1);clip-path:inset(0 0 0 0 round max(2px,var(--design-radius,4px)));translate:0 0}
}
@keyframes utanapyGentleDrift{
  from{opacity:0;translate:-10px 6px;scale:.992}
  to{opacity:var(--utanapy-final-opacity,1);translate:0 0;scale:1}
}

[data-live-animation="fade"]{animation-delay:var(--live-motion-delay,0ms)}
[data-live-animation="rise"]{animation-delay:var(--live-motion-delay,0ms)}
[data-live-animation="pop"]{animation-delay:var(--live-motion-delay,0ms)}
[data-live-animation="float"]{animation-delay:var(--live-motion-delay,0ms)}
[data-live-animation="slide-left"]{animation:utanapySlideLeft var(--live-motion-duration,480ms) cubic-bezier(.18,.78,.24,1) var(--live-motion-delay,0ms) both}
[data-live-animation="slide-right"]{animation:utanapySlideRight var(--live-motion-duration,480ms) cubic-bezier(.18,.78,.24,1) var(--live-motion-delay,0ms) both}
[data-live-animation="window"]{animation:utanapyWindowReveal calc(var(--live-motion-duration,480ms) * 1.12) cubic-bezier(.2,.72,.2,1) var(--live-motion-delay,0ms) both}
[data-live-animation="unfold"]{animation:utanapySoftUnfold calc(var(--live-motion-duration,480ms) * 1.08) cubic-bezier(.2,.72,.2,1) var(--live-motion-delay,0ms) both}
[data-live-animation="drift"]{animation:utanapyGentleDrift var(--live-motion-duration,480ms) cubic-bezier(.18,.78,.24,1) var(--live-motion-delay,0ms) both}

/* Keep layout editing steady. The explicit Preview button temporarily opts one
   object back into motion, so dragging/resizing never fights an animation. */
.live-site-editing [data-live-animation]{animation:none!important}
.live-site-editing [data-live-animation].live-motion-preview[data-live-animation="fade"]{animation:utanapyFadeIn var(--live-motion-duration,480ms) ease var(--live-motion-delay,0ms) both!important}
.live-site-editing [data-live-animation].live-motion-preview[data-live-animation="rise"]{animation:utanapyRiseIn var(--live-motion-duration,480ms) cubic-bezier(.2,.75,.25,1) var(--live-motion-delay,0ms) both!important}
.live-site-editing [data-live-animation].live-motion-preview[data-live-animation="pop"]{animation:utanapySoftPop var(--live-motion-duration,480ms) cubic-bezier(.2,.8,.2,1) var(--live-motion-delay,0ms) both!important}
.live-site-editing [data-live-animation].live-motion-preview[data-live-animation="float"]{animation:utanapyGentleFloat calc(var(--live-motion-duration,480ms) * 6) ease-in-out var(--live-motion-delay,0ms) infinite!important}
.live-site-editing [data-live-animation].live-motion-preview[data-live-animation="slide-left"]{animation:utanapySlideLeft var(--live-motion-duration,480ms) cubic-bezier(.18,.78,.24,1) var(--live-motion-delay,0ms) both!important}
.live-site-editing [data-live-animation].live-motion-preview[data-live-animation="slide-right"]{animation:utanapySlideRight var(--live-motion-duration,480ms) cubic-bezier(.18,.78,.24,1) var(--live-motion-delay,0ms) both!important}
.live-site-editing [data-live-animation].live-motion-preview[data-live-animation="window"]{animation:utanapyWindowReveal calc(var(--live-motion-duration,480ms) * 1.12) cubic-bezier(.2,.72,.2,1) var(--live-motion-delay,0ms) both!important}
.live-site-editing [data-live-animation].live-motion-preview[data-live-animation="unfold"]{animation:utanapySoftUnfold calc(var(--live-motion-duration,480ms) * 1.08) cubic-bezier(.2,.72,.2,1) var(--live-motion-delay,0ms) both!important}
.live-site-editing [data-live-animation].live-motion-preview[data-live-animation="drift"]{animation:utanapyGentleDrift var(--live-motion-duration,480ms) cubic-bezier(.18,.78,.24,1) var(--live-motion-delay,0ms) both!important}

/* Page transitions. These run once when a new public route becomes active. */
@keyframes utanapyPageSoftSlide{
  from{opacity:.15;translate:0 13px}
  to{opacity:1;translate:0 0}
}
@keyframes utanapyPageFade{
  from{opacity:0}
  to{opacity:1}
}
@keyframes utanapyPageWindow{
  from{opacity:.3;clip-path:inset(0 8% 0 8% round 10px);scale:.994}
  to{opacity:1;clip-path:inset(0 0 0 0 round 0);scale:1}
}
.utanapy-page-enter[data-page-motion="softslide"]{animation:utanapyPageSoftSlide var(--page-motion-duration,500ms) cubic-bezier(.18,.78,.24,1) both}
.utanapy-page-enter[data-page-motion="fade"]{animation:utanapyPageFade var(--page-motion-duration,500ms) ease both}
.utanapy-page-enter[data-page-motion="window"]{animation:utanapyPageWindow calc(var(--page-motion-duration,500ms) * 1.15) cubic-bezier(.2,.72,.2,1) both}

/* Optional reveal-on-scroll for major content blocks. */
.utanapy-scroll-reveal{
  opacity:0;
  translate:0 15px;
  transition:opacity .56s ease,translate .62s cubic-bezier(.18,.78,.24,1);
  transition-delay:var(--scroll-reveal-delay,0ms);
}
.utanapy-scroll-reveal.utanapy-scroll-visible{
  opacity:1;
  translate:0 0;
}

/* Modals feel like a designed interface rather than a browser-default popup. */
@keyframes utanapyDialogOpen{
  from{opacity:0;translate:0 10px;scale:.985}
  to{opacity:1;translate:0 0;scale:1}
}
@keyframes utanapyBackdropIn{
  from{opacity:0}
  to{opacity:1}
}
dialog[open]{animation:utanapyDialogOpen .28s cubic-bezier(.2,.75,.25,1) both}
dialog[open]::backdrop{animation:utanapyBackdropIn .22s ease both}

/* Tiny media/card movement: enough life to feel authored, not corporate. */
.entry-card .entry-image{
  transition:scale .38s cubic-bezier(.2,.72,.2,1),filter .3s ease;
}
.entry-card:hover .entry-image{scale:1.018;filter:brightness(1.025)}
.category-card .category-icon{transition:translate .28s cubic-bezier(.2,.75,.25,1)}
.category-card:hover .category-icon{translate:3px -2px}
.top-nav button{position:relative}
.top-nav button::after{
  content:"";position:absolute;left:18%;right:18%;bottom:2px;height:1px;
  background:currentColor;opacity:.5;scale:0 1;transform-origin:center;
  transition:scale .2s ease;
}
.top-nav button:hover::after,.top-nav button:focus-visible::after{scale:1 1}

@media (prefers-reduced-motion:reduce){
  .utanapy-scroll-reveal{opacity:1!important;translate:0 0!important;transition:none!important}
  .utanapy-page-enter,dialog[open],dialog[open]::backdrop{animation:none!important}
  .entry-card .entry-image,.category-card .category-icon,.top-nav button::after{transition:none!important}
}
