/* SinsAuthor V2 — Part 5 Universe v0.1 */
.universe-hero{position:relative;overflow:hidden;padding:64px 0 52px;background:radial-gradient(circle at 73% 26%,rgba(81,47,119,.18),transparent 32%),radial-gradient(circle at 22% 22%,rgba(156,39,63,.13),transparent 27%),linear-gradient(180deg,#08070b,#0a0910 68%,#08070b)}
.universe-hero::after{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,rgba(181,58,80,.35),transparent)}
.universe-hero-atmosphere{position:absolute;inset:0;pointer-events:none;overflow:hidden;opacity:.9}
.universe-orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.2}
.universe-orb-red{width:360px;height:360px;background:#9e263f;left:-110px;top:10px}
.universe-orb-violet{width:440px;height:440px;background:#5b3f91;right:8%;top:-170px}
.universe-orb-blue{width:300px;height:300px;background:#2d5677;right:-100px;bottom:-100px}
.universe-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:56px;align-items:center}
.universe-hero-copy{max-width:760px}
.universe-hero h1,.universe-worlds h2,.universe-index h2,.haunted-case-index h2,.universe-canon h2,.universe-gateways h2{font-size:clamp(1.7rem,2.4vw,2.25rem);line-height:1.08;margin:.35rem 0 .7rem}
.universe-lede{font-family:var(--font-serif,Georgia,serif);font-size:clamp(1.05rem,1.6vw,1.28rem);line-height:1.55;color:#f0e9ed;max-width:720px}
.universe-intro{max-width:720px;color:var(--muted,#b8b0b7);line-height:1.7}
.universe-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}

.universe-compass{position:relative;min-height:390px;border:1px solid rgba(218,195,206,.14);border-radius:28px;background:radial-gradient(circle at 50% 48%,rgba(159,44,66,.16),transparent 24%),linear-gradient(145deg,rgba(17,15,22,.94),rgba(8,7,11,.78));box-shadow:0 28px 80px rgba(0,0,0,.32);overflow:hidden}
.universe-compass::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:36px 36px;mask-image:radial-gradient(circle,#000 20%,transparent 78%);opacity:.55}
.universe-compass-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:82px;height:82px;border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;font-size:2rem;font-weight:700;color:#fff;border:1px solid rgba(201,74,97,.65);background:radial-gradient(circle at 35% 30%,#6f2839,#210d14 65%,#0b080c);box-shadow:0 0 50px rgba(172,45,68,.2);z-index:5}
.universe-compass-ring{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid rgba(230,219,224,.12);border-radius:50%;pointer-events:none}
.ring-one{width:220px;height:220px}.ring-two{width:330px;height:330px;border-style:dashed;opacity:.7}
.universe-compass-node{position:absolute;z-index:4;width:118px;min-height:76px;padding:13px 12px;border:1px solid rgba(226,210,219,.17);border-radius:17px;background:rgba(9,8,12,.86);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);text-align:center;text-decoration:none;color:#fff;box-shadow:0 14px 36px rgba(0,0,0,.22);transition:transform .2s ease,border-color .2s ease,background .2s ease}
.universe-compass-node:hover{transform:translateY(-3px);border-color:rgba(210,72,98,.48);background:rgba(21,15,21,.96)}
.universe-compass-node span{display:block;font-weight:800;letter-spacing:.14em;font-size:.76rem}.universe-compass-node small{display:block;color:#a9a0a8;margin-top:4px;font-size:.72rem}
.node-ddh{left:9%;top:14%}.node-kai{right:8%;top:18%}.node-files{left:50%;bottom:9%;transform:translateX(-50%)}.node-files:hover{transform:translateX(-50%) translateY(-3px)}

.universe-worlds,.universe-index,.haunted-case-index,.universe-canon,.universe-gateways{padding-top:62px;padding-bottom:62px}
.universe-world-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}
.universe-world-card{position:relative;isolation:isolate;overflow:hidden;min-height:460px;padding:24px;border:1px solid rgba(218,195,206,.14);border-radius:24px;background:#0c0a0f;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 20px 56px rgba(0,0,0,.22)}
.universe-world-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(7,6,9,.12) 0%,rgba(8,7,10,.62) 48%,rgba(8,7,10,.98) 79%)}
.universe-world-bg{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;filter:saturate(.82) contrast(1.06);opacity:.64;transform:scale(1.02)}
.world-ddh .universe-world-bg{background-image:url('../images/stories/ddh-card-bg.webp')}.world-kai .universe-world-bg{background-image:url('../images/stories/kai-card-bg.webp')}.world-files .universe-world-bg{background-image:url('../images/stories/haunted-files-card-bg.webp')}
.universe-world-cover{position:absolute;right:18px;top:18px;width:96px;height:144px;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:0 12px 34px rgba(0,0,0,.44);background:#09080c}
.universe-world-cover img{width:100%;height:100%;object-fit:cover;display:block}
.universe-world-copy{position:relative;z-index:2;max-width:92%}
.world-kicker{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:#c9b8bf;margin:0 0 9px}
.universe-world-card h3{font-size:1.38rem;line-height:1.12;margin:0 0 10px;color:#fff}.universe-world-card p{color:#d7cfd4;line-height:1.58}.world-tags{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 18px}.world-tags span{font-size:.7rem;padding:6px 9px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(6,5,8,.48);color:#e4dce0}

.universe-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 14px;padding:8px;border:1px solid rgba(218,195,206,.13);border-radius:18px;background:#0b0910}
.universe-tabs button{border:0;border-radius:12px;padding:10px 14px;background:transparent;color:#bfb5bc;font:inherit;font-size:.83rem;font-weight:700;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease}
.universe-tabs button:hover{color:#fff;background:rgba(255,255,255,.04)}.universe-tabs button.is-active{color:#fff;background:linear-gradient(135deg,#a92c48,#6e1f34);box-shadow:0 8px 24px rgba(131,32,51,.22)}
.universe-panes{border:1px solid rgba(218,195,206,.13);border-radius:24px;background:linear-gradient(160deg,#0d0b11,#09080c);overflow:hidden}
.universe-pane{padding:22px}.universe-pane[hidden]{display:none!important}
.universe-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.universe-index-grid article{min-height:180px;padding:20px;border:1px solid rgba(218,195,206,.10);border-radius:18px;background:rgba(255,255,255,.018)}
.index-code{display:inline-block;font-size:.64rem;letter-spacing:.18em;color:#d1778c;text-transform:uppercase;margin-bottom:16px}.universe-index-grid h3{font-size:1.05rem;margin:0 0 8px}.universe-index-grid p{font-size:.88rem;line-height:1.62;color:#bdb4bb}.universe-index-grid a{font-size:.82rem;font-weight:700;color:#f0c5cf;text-decoration:none}
.character-index-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.universe-lore-stack{display:grid;gap:10px}.universe-lore-stack article{display:grid;grid-template-columns:120px 1fr;gap:18px;padding:19px;border:1px solid rgba(218,195,206,.10);border-radius:17px;background:rgba(255,255,255,.018)}.universe-lore-stack article>span{font-size:.67rem;letter-spacing:.16em;color:#d1778c;font-weight:800}.universe-lore-stack h3{font-size:1.02rem;margin:0 0 6px}.universe-lore-stack p{margin:0;color:#bdb4bb;line-height:1.62}
.universe-timeline{position:relative;padding-left:26px}.universe-timeline::before{content:"";position:absolute;left:7px;top:10px;bottom:10px;width:1px;background:linear-gradient(#9f314b,#584068,#31516e)}.universe-timeline article{position:relative;padding:0 0 24px 18px}.universe-timeline article::before{content:"";position:absolute;left:-23px;top:7px;width:9px;height:9px;border-radius:50%;background:#b83b57;box-shadow:0 0 0 5px rgba(184,59,87,.1)}.universe-timeline span{font-size:.65rem;letter-spacing:.15em;color:#cf8798}.universe-timeline h3{font-size:1.03rem;margin:5px 0 5px}.universe-timeline p{margin:0;color:#bdb4bb;line-height:1.6}

.haunted-case-index{position:relative}.haunted-case-index::before{content:"";position:absolute;inset:18% 0 auto;height:300px;background:radial-gradient(circle at 50% 50%,rgba(38,65,82,.13),transparent 65%);pointer-events:none}
.haunted-case-grid{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;margin-top:24px}
.haunted-case{min-height:188px;padding:17px;border:1px solid rgba(150,177,191,.13);border-radius:17px;background:linear-gradient(160deg,rgba(17,21,27,.88),rgba(8,8,11,.96));box-shadow:0 16px 34px rgba(0,0,0,.16)}
.haunted-case>span{display:block;font-size:.61rem;letter-spacing:.15em;color:#8fb0c1;margin-bottom:12px}.haunted-case h3{font-size:.94rem;line-height:1.18;margin:0 0 8px}.haunted-case p{font-size:.75rem;color:#d4dce0;margin:0 0 9px}.haunted-case small{display:block;font-size:.73rem;line-height:1.5;color:#9fa9af}

.universe-canon{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);gap:36px;align-items:center;border-top:1px solid rgba(218,195,206,.1);border-bottom:1px solid rgba(218,195,206,.1)}
.universe-canon>div p:last-child{max-width:760px;color:#bdb4bb;line-height:1.65}.universe-canon aside{padding:22px;border:1px solid rgba(209,86,111,.18);border-radius:20px;background:linear-gradient(145deg,rgba(43,17,26,.48),rgba(12,9,14,.92))}.canon-status{display:block;font-size:.64rem;letter-spacing:.16em;color:#d98799;margin-bottom:10px}.universe-canon aside strong{display:block;font-size:1rem;line-height:1.45}.universe-canon aside p{font-size:.82rem;line-height:1.6;color:#aea4ab;margin-bottom:0}

.universe-gateway-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:22px}.universe-gateway{position:relative;min-height:160px;padding:19px;border:1px solid rgba(218,195,206,.12);border-radius:18px;background:#0d0b11;color:#fff;text-decoration:none;transition:transform .2s ease,border-color .2s ease,background .2s ease}.universe-gateway:hover{transform:translateY(-3px);border-color:rgba(198,65,90,.35);background:#120d13}.universe-gateway span{display:block;font-size:.61rem;letter-spacing:.17em;color:#cf8a99;margin-bottom:26px}.universe-gateway strong{display:block;font-family:Georgia,serif;font-size:1.08rem}.universe-gateway p{font-size:.76rem;line-height:1.5;color:#aaa1a8}.universe-gateway i{position:absolute;right:16px;bottom:14px;font-style:normal;color:#dd778d}

@media(max-width:1100px){.universe-hero-inner{grid-template-columns:1fr 320px;gap:28px}.universe-world-grid{grid-template-columns:1fr}.universe-world-card{min-height:360px}.universe-world-copy{max-width:72%}.haunted-case-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.universe-gateway-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.universe-hero{padding-top:42px}.universe-hero-inner{grid-template-columns:1fr}.universe-compass{min-height:320px}.ring-one{width:190px;height:190px}.ring-two{width:270px;height:270px}.universe-index-grid,.character-index-grid{grid-template-columns:1fr 1fr}.haunted-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.universe-canon{grid-template-columns:1fr}.universe-worlds,.universe-index,.haunted-case-index,.universe-canon,.universe-gateways{padding-top:48px;padding-bottom:48px}}
@media(max-width:560px){.universe-hero h1,.universe-worlds h2,.universe-index h2,.haunted-case-index h2,.universe-canon h2,.universe-gateways h2{font-size:1.55rem}.universe-compass{min-height:280px}.universe-compass-center{width:64px;height:64px;font-size:1.5rem}.ring-one{width:160px;height:160px}.ring-two{width:230px;height:230px}.universe-compass-node{width:96px;min-height:66px;padding:11px 8px}.node-ddh{left:4%;top:10%}.node-kai{right:4%;top:14%}.universe-world-card{min-height:420px;padding:20px}.universe-world-copy{max-width:100%;padding-top:112px}.universe-world-cover{width:78px;height:117px}.universe-tabs{display:grid;grid-template-columns:1fr 1fr}.universe-index-grid,.character-index-grid,.haunted-case-grid,.universe-gateway-grid{grid-template-columns:1fr}.universe-lore-stack article{grid-template-columns:1fr;gap:7px}.universe-pane{padding:14px}.haunted-case{min-height:0}}
@media(prefers-reduced-motion:reduce){.universe-compass-node,.universe-gateway{transition:none}}
