/*
Theme Name: Crystal Astral 01 — Moon Muse
Author: Mirrorlike
Description: Moonlit Japanese editorial theme with configurable Shop links and WordPress plugin shortcode/block area. Payment processing is not bundled.
Version: 1.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: moon-muse
License: GPL-2.0-or-later
*/

:root{--night:#29222c;--plum:#44343f;--gold:#d8b98a;--silk:#e9e1d7;--ink:#4c3c49}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--night);font-family:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif}a{color:inherit;text-decoration:none}
.night{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 76% 9%,#68535c 0%,#3e303b 38%,#29222c 82%);color:#e3d0b9}
.night:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 78% 0%,#e4cfad24,transparent 48%)}
.ornament{position:absolute;z-index:-1;pointer-events:none;object-fit:contain;opacity:.76}
.hero{height:clamp(260px,32vw,420px);padding:32px clamp(22px,6vw,92px)}.hero .ornament{right:-3%;bottom:-31%;width:min(76%,900px);height:125%;object-position:right bottom}.header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.brand{font-size:clamp(17px,2.4vw,29px);letter-spacing:.15em}.nav{display:flex;gap:clamp(13px,3vw,35px);font-size:12px;letter-spacing:.15em}.nav a:hover{text-decoration:underline;text-underline-offset:8px}
.silk{position:relative;isolation:isolate;background:linear-gradient(120deg,#eee6db,#e0d6ce 55%,#e7ded6);overflow:hidden}.silk:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 12% 5%,#fff8eb88,transparent 55%)}
.blog-entry{min-height:240px;display:grid;grid-template-columns:43% 57%;align-items:center}.blog-entry .copy{padding:50px clamp(24px,7vw,100px)}.blog-entry h2{font:400 clamp(43px,6vw,80px) Georgia,serif;letter-spacing:.03em;margin:0 0 12px}.blog-entry .photo{height:100%;min-height:270px;background:linear-gradient(115deg,#d6c9bf,#f2e8dd);overflow:hidden}.blog-entry .photo img{width:100%;height:100%;object-fit:cover;display:block}.blog-entry .copy p{font-size:13px;letter-spacing:.14em}
.journal{padding:clamp(45px,7vw,85px) clamp(20px,6vw,92px) 75px;max-width:1500px;margin:auto}.journal-head{display:flex;justify-content:space-between;border-bottom:1px solid #bfb1a9;padding-bottom:17px;gap:16px;color:#796a70;font-size:11px;letter-spacing:.14em}.spread{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 14px;padding:48px 0 40px}.story{min-width:0}.story h2{font-size:clamp(22px,2.7vw,34px);font-weight:400;line-height:1.55;margin:0;letter-spacing:.035em}.story .meta{font-size:11px;color:#8a7a7d;margin:0 0 14px}.story .summary{font-size:13px;line-height:2;color:#675e61;max-width:34em}.story .thumb{display:block;overflow:hidden;width:36%;max-width:190px;aspect-ratio:4/3;margin:15px 0 0 auto}.thumb img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.7)}.lead{grid-column:4/11;grid-row:1}.second{grid-column:2/7;grid-row:2;margin-top:30px}.third{grid-column:8/12;grid-row:2;margin-top:120px}.fourth{grid-column:4/11;grid-row:3;margin-top:70px}.journal-end{border-top:1px solid #bfb1a9;padding-top:19px;font-size:12px;color:#796a70}
.shop{min-height:450px;padding:clamp(55px,7vw,100px) clamp(24px,7vw,100px);background:radial-gradient(ellipse at 80% 45%,#4c3944,#2b232d 72%)}.shop .ornament{width:min(95%,1100px);right:-4%;bottom:-24%;height:125%;opacity:.77;object-position:right bottom}.shop h2{font:400 clamp(48px,6vw,80px) Georgia,serif;margin:0}.shop .sub{font-size:13px;letter-spacing:.15em;margin-top:18px}.footer{padding:42px clamp(24px,7vw,100px);background:#211c23;color:#c7b2a9;font-size:13px;letter-spacing:.1em}
@media(max-width:700px){.hero{height:260px;padding:22px}.hero .ornament{width:135%;right:-47%;bottom:-26%;opacity:.74}.header{align-items:center}.brand{font-size:17px}.nav{font-size:10px;gap:13px}.blog-entry{grid-template-columns:1fr}.blog-entry .copy{padding:45px 25px 30px}.blog-entry .photo{min-height:230px;height:230px}.journal{padding:42px 22px 55px}.spread{grid-template-columns:repeat(6,minmax(0,1fr));gap:0 9px}.lead{grid-column:2/7;grid-row:1}.second{grid-column:1/6;grid-row:2;margin-top:46px}.third{grid-column:2/7;grid-row:3;margin-top:50px}.fourth{grid-column:1/7;grid-row:4;margin:50px 0 0 10%}.story h2{font-size:25px}.story .summary{font-size:12px}.shop{min-height:345px;padding:50px 25px}.shop .ornament{width:150%;right:-57%;bottom:-13%}}

/* WordPress functional styles */
.site-header .brand a{color:inherit}.site-header .nav{align-items:center}.nav .menu{display:flex;gap:24px;list-style:none;padding:0;margin:0}.nav .menu a{color:inherit}.nav .menu-item{list-style:none}.hero{position:relative}.shop-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.shop-button{position:relative;display:inline-block;padding:13px 25px;border:1px solid #c6a57e;background:#372a35bb;color:#f5e3c6;font-size:13px;letter-spacing:.1em;transition:background .2s}.shop-button:hover{background:#604b58}.site-footer a{color:inherit}.post-link:hover{text-decoration:underline;text-underline-offset:5px}.post-link{color:inherit}.wp-post-image{max-width:100%;height:auto}.story .thumb{background:#bcaeaa}.story .thumb img{height:100%;object-fit:cover}.story .meta{letter-spacing:.07em}.entry-shell{max-width:1000px;margin:0 auto;padding:65px 26px 100px}.entry-title{font-size:clamp(30px,5vw,54px);font-weight:400;line-height:1.4}.entry-content{font-size:16px;line-height:2.1;overflow-wrap:anywhere}.entry-content img{max-width:100%;height:auto}.entry-content a{text-decoration:underline}.entry-meta{font-size:12px;color:#8c7c7b}.pagination{margin:25px auto 0;display:flex;gap:20px;justify-content:center}.pagination a{text-decoration:underline}.blog-entry .photo img{object-fit:cover}.story .summary{display:block}.story{margin-bottom:16px}.shop .ornament{pointer-events:none}.shop h2,.shop .sub,.shop-actions{position:relative}.screen-reader-text{position:absolute;left:-9999px}.empty-notice{padding:25px 0;font-size:15px}.custom-logo{max-width:220px;height:auto}.wp-block-image img{height:auto}@media(max-width:700px){.nav .menu{gap:12px}.nav .menu a{font-size:10px}.shop-actions{margin-top:24px}.shop-button{padding:11px 16px}}

.shop-button-placeholder{opacity:.7;cursor:default}.shop-actions{z-index:2}

/* v1.0: media-managed Blog hero and plugin-hosted Shop content */
.blog-entry .photo{position:relative}.blog-entry .photo .blog-hero-image{width:100%;height:100%;display:block;object-fit:cover}
.shop-plugin-content{position:relative;z-index:2;max-width:1060px;margin:38px 0 0;color:#f1e2d4}
.shop-plugin-content a{color:#f3d3a2;text-decoration:underline;text-underline-offset:3px}
.shop-plugin-content button,.shop-plugin-content input,.shop-plugin-content select{max-width:100%}
.shop-plugin-content img{max-width:100%;height:auto}
.shop-plugin-content .wp-block-button__link{background:#6a505d;color:#fff2db;text-decoration:none;border:1px solid #c6a57e}
.shop-plugin-content .woocommerce{color:#f1e2d4}
@media(max-width:700px){.shop-plugin-content{margin-top:28px}.shop-plugin-content>*{max-width:100%}}
