@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&family=Noto+Serif+SC:wght@500;700;900&display=swap');

:root{--theme:#6fb7c1;--accent:#ff9a9e;--ink:#263143;--muted:#758195;--paper:rgba(255,255,255,.82);--glass:rgba(255,255,255,.54);--shadow:0 24px 80px rgba(70,98,120,.18);--radius:28px;--font:'Kosugi Maru','Noto Serif SC',system-ui,sans-serif}
*{box-sizing:border-box;cursor:url('https://cur.cursors-4u.net/anime/ani-12/ani1136.ani'),url('https://cur.cursors-4u.net/anime/ani-12/ani1136.png'),auto!important}
html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--ink);background:linear-gradient(135deg,#f8fdff 0%,#fff7f8 48%,#effbff 100%);overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 15% 20%,rgba(111,183,193,.14),transparent 26%),radial-gradient(circle at 88% 10%,rgba(255,154,158,.12),transparent 24%),radial-gradient(circle at 70% 78%,rgba(148,197,255,.12),transparent 24%);background-size:auto,auto,auto;z-index:-3;will-change:transform}.sparkles{display:none}.blob{position:fixed;border-radius:999px;opacity:.22;z-index:-2;animation:none}.b1{width:310px;height:310px;background:#9ee7ff;left:-90px;top:130px}.b2{width:240px;height:240px;background:#ffc4d0;right:-70px;top:60px;animation-delay:1.5s}.b3{width:200px;height:200px;background:#ffe5a5;right:12%;bottom:70px;animation-delay:3s}@keyframes float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-24px) rotate(8deg)}}@keyframes twinkle{0%,100%{opacity:.35;transform:scale(1) rotate(0)}50%{opacity:1;transform:scale(1.22) rotate(18deg)}}@keyframes drift{to{background-position:180px 90px,-130px 260px}}@keyframes rise{from{opacity:0;transform:translateY(42px) scale(.98)}to{opacity:1;transform:none}}@keyframes pop{0%{transform:scale(.96);opacity:0}100%{transform:scale(1);opacity:1}}@keyframes shimmer{0%{transform:translateX(-120%) rotate(20deg)}100%{transform:translateX(240%) rotate(20deg)}}.reveal{opacity:0;transform:translateY(36px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.8,.2,1)}.reveal.in-view{opacity:1;transform:none}.site-nav{position:fixed;top:18px;left:50%;transform:translateX(-50%);z-index:30;display:flex;gap:10px;align-items:center;padding:10px;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:rgba(255,255,255,.82);box-shadow:0 8px 24px rgba(50,80,100,.10)}.brand{font-weight:900;color:var(--theme);padding:0 12px;white-space:nowrap}.nav-link,.btn,button{border:0;text-decoration:none;font-family:inherit;font-weight:800;border-radius:999px;padding:11px 18px;color:#fff;background:linear-gradient(135deg,var(--theme),#81d7e6);box-shadow:0 8px 18px rgba(111,183,193,.20);display:inline-flex;align-items:center;justify-content:center;gap:8px;position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.nav-link.secondary,.btn.secondary{background:rgba(255,255,255,.72);color:var(--theme);box-shadow:none;border:1px solid rgba(111,183,193,.25)}.nav-link:hover,.btn:hover,button:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(255,154,158,.18);filter:saturate(1.03)}.nav-link:active,.btn:active,button:active{transform:translateY(1px) scale(.97)}.nav-link:after,.btn:after,button:after{display:none}.hero{min-height:88vh;padding:125px 24px 90px;display:grid;place-items:center;position:relative;background-size:cover;background-position:center;background-attachment:scroll}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(22,33,50,.18),rgba(255,255,255,.3) 60%,rgba(255,255,255,.9));}.hero-card{position:relative;width:min(1060px,100%);display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center}.hero-copy{padding:46px;border-radius:40px;background:rgba(255,255,255,.78);box-shadow:0 18px 44px rgba(70,98,120,.14);border:1px solid rgba(255,255,255,.7);animation:rise .6s ease both}.kicker{color:var(--accent);font-weight:900;letter-spacing:.12em}.hero h1{font-size:clamp(3rem,8vw,7.2rem);line-height:.95;margin:12px 0 16px;text-shadow:0 8px 0 rgba(255,255,255,.45)}.subtitle{font-size:1.3rem;color:#4f6074;line-height:1.9}.notice{margin-top:24px;padding:16px 18px;border-radius:20px;background:#fff8;border:1px dashed rgba(255,154,158,.6)}.hero-polaroid{position:relative;padding:16px 16px 70px;background:#fff;border-radius:26px;box-shadow:0 18px 44px rgba(70,98,120,.14);transform:rotate(2deg)}.hero-polaroid img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:18px}.tape{position:absolute;top:-18px;left:50%;transform:translateX(-50%) rotate(-4deg);width:150px;height:42px;background:rgba(255,238,166,.7);border-radius:8px}.polaroid-caption{position:absolute;bottom:24px;left:0;right:0;text-align:center;color:#718096}.container{width:min(1100px,calc(100% - 36px));margin:auto}.section-title{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:76px 0 28px}.section-title h2{font-size:clamp(2rem,4vw,3.6rem);margin:0}.section-title small{color:var(--muted)}.reader-note{color:var(--muted);padding:10px 16px;border-radius:999px;background:rgba(255,255,255,.56);border:1px solid rgba(111,183,193,.16)}.mood-section{position:relative}.mood-section:before{content:'';position:absolute;inset:-30px -20px auto auto;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(255,154,158,.22),transparent 68%);animation:float 5s ease-in-out infinite}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.feature-card{background:var(--paper);border:1px solid rgba(255,255,255,.75);border-radius:var(--radius);box-shadow:0 14px 34px rgba(70,98,120,.12);overflow:hidden;transition:transform .22s ease, box-shadow .22s ease}.feature-card:hover{transform:translateY(-6px)}.feature-card img{width:100%;height:210px;object-fit:cover;background:#fff}.feature-body{padding:24px}.feature-body h3{font-size:1.4rem;margin:0 0 12px}.feature-body p{color:var(--muted);line-height:1.8}.posts{display:grid;gap:30px}.post-card{display:grid;grid-template-columns:410px 1fr;gap:0;background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.72));border-radius:34px;overflow:hidden;box-shadow:0 16px 38px rgba(80,100,140,.14);border:1px solid rgba(255,255,255,.75);transition:transform .22s ease, box-shadow .22s ease;position:relative}.post-card:before{content:'✦';position:absolute;right:24px;top:18px;color:rgba(255,154,158,.35);font-size:24px;z-index:2}.post-card:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(80,100,140,.16)}.post-cover{position:relative;min-height:310px;overflow:hidden;background:linear-gradient(135deg,#dff7ff,#fff0f4)}.post-cover:after{display:none}.post-cover img{width:100%;height:100%;object-fit:cover;transition:transform .28s ease}.post-card:hover .post-cover img{transform:scale(1.03)}.badge{position:absolute;top:18px;left:18px;background:linear-gradient(135deg,var(--accent),#ffc46b);color:#fff;padding:8px 13px;border-radius:999px;font-size:.86rem;font-weight:900}.post-body{padding:34px;display:flex;flex-direction:column}.meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:.92rem}.post-body h3{font-size:2rem;margin:16px 0 12px}.post-body h3 a{color:var(--ink);text-decoration:none}.post-body h3 a:hover{color:var(--theme)}.summary{line-height:1.9;color:#607086}.tags{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.tag{font-size:.85rem;padding:6px 10px;border-radius:999px;background:rgba(111,183,193,.13);color:var(--theme)}.article-hero{min-height:56vh;background-size:cover;background-position:center;position:relative;display:flex;align-items:end;padding:130px 24px 70px}.article-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,30,48,.25),rgba(20,30,48,.62))}.article-title{position:relative;width:min(900px,100%);margin:auto;color:#fff}.article-title h1{font-size:clamp(2.5rem,7vw,5rem);margin:10px 0}.article{width:min(880px,calc(100% - 36px));margin:-42px auto 80px;padding:48px;border-radius:34px;background:rgba(255,255,255,.92);box-shadow:0 16px 38px rgba(80,100,140,.14);position:relative;line-height:2.2;font-size:1.12rem}.article-content{white-space:pre-wrap}.related{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.related a{text-decoration:none;color:var(--ink);background:#fff8;border-radius:22px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.08)}.related img{width:100%;height:120px;object-fit:cover}.related span{display:block;padding:14px}.admin-shell{padding:110px 20px 70px}.admin-panel,.login-card,.editor-card{width:min(1120px,100%);margin:auto;background:rgba(255,255,255,.90);border:1px solid rgba(255,255,255,.75);border-radius:34px;box-shadow:0 14px 34px rgba(80,100,140,.12);padding:34px;animation:pop .35s ease both}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.panel-section{padding:24px;border-radius:26px;background:rgba(255,255,255,.62);border:1px solid rgba(111,183,193,.16);margin-bottom:24px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-weight:900;color:#405065}.input,textarea,select{width:100%;padding:14px 16px;border:2px solid rgba(111,183,193,.18);border-radius:18px;background:rgba(255,255,255,.8);font-family:inherit;font-size:1rem;transition:.25s ease}.input:focus,textarea:focus,select:focus{outline:none;border-color:var(--theme);box-shadow:0 0 0 5px rgba(111,183,193,.13);transform:translateY(-2px)}textarea{min-height:210px;resize:vertical}.preview-img{width:120px;height:80px;object-fit:cover;border-radius:16px;background:#fff;border:1px solid rgba(0,0,0,.06)}.table-list{display:grid;gap:12px}.row-card{display:grid;grid-template-columns:78px 1fr auto;gap:14px;align-items:center;padding:12px;border-radius:22px;background:#fff8;border:1px solid rgba(0,0,0,.05);transition:.25s ease}.row-card:hover{transform:translateX(2px);box-shadow:0 8px 18px rgba(0,0,0,.05)}.row-card img{width:78px;height:58px;object-fit:cover;border-radius:15px}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.danger{background:linear-gradient(135deg,#ff6b6b,#ff9a9e)!important}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;background-size:cover;background-position:center}.login-card{max-width:460px;text-align:center}.avatar{width:92px;height:92px;border-radius:26px;object-fit:cover;box-shadow:0 14px 35px rgba(0,0,0,.14);animation:float 5s ease-in-out infinite}.error-box{background:#fff1f2;color:#e11d48;border:1px solid #fecdd3;border-radius:18px;padding:12px;margin:16px 0;animation:pop .3s ease}.empty{padding:28px;text-align:center;color:var(--muted);background:#fff8;border-radius:24px}.footer{text-align:center;padding:60px 20px;color:var(--muted)}@media(max-width:860px){.site-nav{left:12px;right:12px;transform:none;overflow:auto;justify-content:flex-start}.brand{display:none}.hero-card,.feature-grid,.post-card,.admin-grid,.form-grid,.related{grid-template-columns:1fr}.hero{padding-top:110px}.hero-copy{padding:28px}.hero-polaroid{display:none}.post-cover{min-height:230px}.article{padding:28px}.section-title{align-items:flex-start;flex-direction:column}.row-card{grid-template-columns:60px 1fr}.row-actions{grid-column:1/-1}.row-card img{width:60px;height:50px}}

@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal,.nav-link,.btn,button,.post-cover img,.feature-card,.post-card,.row-card,.avatar{transition:none!important;animation:none!important;transform:none!important}}

.image-mode-setting small{display:block;margin-top:8px;color:var(--muted);line-height:1.6}
body.image-mode-fit .hero,
body.image-mode-fit .article-hero{background-size:cover;background-position:center center;background-repeat:no-repeat}
body.image-mode-fit .hero-polaroid img{aspect-ratio:3/4;object-fit:cover;object-position:center top}
body.image-mode-fit .feature-card img{height:auto;aspect-ratio:16/10;object-fit:cover;object-position:center}
body.image-mode-fit .post-cover{min-height:0;aspect-ratio:16/10}
body.image-mode-fit .post-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
body.image-mode-fit .related img{aspect-ratio:16/9;height:auto;object-fit:cover}
body.image-mode-fit .article{max-width:920px}

/* Extra anime motion kit: lightweight, progressive, non-blocking */
.anime-sky,.cursor-star-layer{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:3}.cursor-star-layer{z-index:80}.sky-piece{position:absolute;top:-8vh;color:rgba(255,154,158,.72);text-shadow:0 0 12px rgba(255,255,255,.9);animation:petalFall linear infinite;will-change:transform}.sky-piece:nth-child(3n){color:rgba(111,183,193,.65)}.sky-piece:nth-child(4n){color:rgba(255,204,112,.62)}@keyframes petalFall{0%{transform:translate3d(0,-8vh,0) rotate(0deg)}50%{transform:translate3d(34px,54vh,0) rotate(180deg)}100%{transform:translate3d(-24px,108vh,0) rotate(360deg)}}.cursor-star{position:fixed;transform:translate(-50%,-50%);color:var(--accent);font-size:14px;text-shadow:0 0 12px rgba(255,255,255,.95);animation:cursorStar .78s ease-out forwards;will-change:transform,opacity}.cursor-star:nth-child(2n){color:var(--theme)}@keyframes cursorStar{to{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.2) rotate(120deg)}}.ripple-dot{position:absolute;width:9px;height:9px;border-radius:999px;background:rgba(255,255,255,.62);transform:translate(-50%,-50%) scale(0);animation:ripple .48s ease-out forwards;pointer-events:none}@keyframes ripple{to{transform:translate(-50%,-50%) scale(15);opacity:0}}.site-nav{transition:background .25s ease,box-shadow .25s ease,transform .25s ease,backdrop-filter .25s ease}.site-nav.is-scrolled{background:rgba(255,255,255,.9);box-shadow:0 12px 30px rgba(50,80,100,.16);backdrop-filter:blur(14px) saturate(1.16)}.hero h1{background:linear-gradient(90deg,var(--theme),var(--accent),#ffd166,var(--theme));background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:titleGradient 8s ease-in-out infinite}@keyframes titleGradient{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}.hero-copy,.feature-card,.post-card,.panel-section{position:relative}.hero-copy:after,.feature-card:after,.post-card:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.2) 35%,transparent 70%);transform:translateX(-130%) skewX(-14deg);transition:transform .8s ease;pointer-events:none}.hero-copy:hover:after,.feature-card:hover:after,.post-card:hover:after{transform:translateX(130%) skewX(-14deg)}.feature-card.is-tilting,.post-card.is-tilting{transform:perspective(900px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateY(-6px)}.hero-polaroid.is-tilting{transform:perspective(900px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateY(-6px)}img{opacity:.01;filter:saturate(.92) blur(3px);transition:opacity .45s ease,filter .45s ease,transform .28s ease}img.is-loaded{opacity:1;filter:saturate(1) blur(0)}.post-card:hover .badge{animation:badgeBounce .48s ease both}@keyframes badgeBounce{0%,100%{transform:scale(1)}45%{transform:scale(1.12) rotate(-3deg)}}.tag{transition:transform .18s ease,background .18s ease}.tag:hover{transform:translateY(-2px) rotate(-1deg);background:rgba(255,154,158,.16)}.notice{animation:noticePulse 4.8s ease-in-out infinite}@keyframes noticePulse{0%,100%{box-shadow:0 0 0 rgba(255,154,158,0)}50%{box-shadow:0 0 0 8px rgba(255,154,158,.08)}}.post-cover:before,.feature-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.28),transparent 42%);opacity:0;transition:opacity .2s ease;z-index:1;pointer-events:none}.post-card:hover .post-cover:before,.feature-card:hover:before{opacity:1}.post-cover img,.feature-card img{will-change:transform}.post-card:hover .post-cover img,.feature-card:hover img{transform:scale(1.045)}@media(max-width:860px),(prefers-reduced-motion:reduce){.anime-sky,.cursor-star-layer{display:none}.hero h1,.notice,.hero-polaroid,.hero-polaroid .tape,.tape{animation:none!important}img{opacity:1;filter:none}.feature-card.is-tilting,.post-card.is-tilting,.hero-polaroid.is-tilting{transform:none}}

/* === Hero polaroid sway: continuous left-right loop (v11) === */
@keyframes heroPolaroidSway {
  0%   { transform: rotate(-2.8deg) translate3d(0, 0, 0); }
  25%  { transform: rotate(2.8deg) translate3d(2px, 0, 0); }
  50%  { transform: rotate(-2.8deg) translate3d(0, 0, 0); }
  75%  { transform: rotate(2.8deg) translate3d(2px, 0, 0); }
  100% { transform: rotate(-2.8deg) translate3d(0, 0, 0); }
}

body .hero-polaroid {
  display: block !important;
  transform-origin: 50% -22px !important;
  animation: heroPolaroidSway 3.4s linear infinite !important;
  will-change: transform;
  backface-visibility: hidden;
  transform-style: flat;
}

body .hero-polaroid:hover,
body .hero-polaroid.is-tilting {
  animation-play-state: running !important;
}

body .hero-polaroid .tape {
  /* tape rides along with the polaroid; no separate counter-motion */
  animation: none !important;
  transform: translateX(-50%) rotate(-4deg) !important;
  transform-origin: center center;
}

@media (max-width: 640px) {
  body .hero-polaroid {
    animation-duration: 8.8s !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body .hero-polaroid {
    animation: none !important;
    transform: rotate(2deg) !important;
  }
}

/* === Admin motion tuner + CSS-variable driven hero sway (v12) === */
@keyframes heroPolaroidSway {
  0%   { transform: rotate(calc(var(--sway-tilt, 2.8deg) * -1)) translate3d(0, 0, 0); }
  25%  { transform: rotate(var(--sway-tilt, 2.8deg)) translate3d(var(--sway-slide, 2px), calc(var(--sway-lift, 0px) * -1), 0); }
  50%  { transform: rotate(calc(var(--sway-tilt, 2.8deg) * -1)) translate3d(0, 0, 0); }
  75%  { transform: rotate(var(--sway-tilt, 2.8deg)) translate3d(var(--sway-slide, 2px), calc(var(--sway-lift, 0px) * -1), 0); }
  100% { transform: rotate(calc(var(--sway-tilt, 2.8deg) * -1)) translate3d(0, 0, 0); }
}

body .hero-polaroid {
  animation-duration: var(--sway-speed, 3.4s) !important;
}

.motion-panel{scroll-margin-top:110px}.motion-tuner{display:grid;grid-template-columns:minmax(280px,1fr) minmax(300px,.9fr);gap:28px;align-items:stretch}.motion-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px}.motion-controls small,.motion-hint{color:var(--muted);line-height:1.6}.motion-actions{grid-column:1/-1;display:flex;gap:12px;flex-wrap:wrap;align-items:center}.motion-preview-wrap{border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.74),rgba(255,247,248,.72));border:1px solid rgba(111,183,193,.16);padding:22px;display:flex;flex-direction:column;gap:14px}.motion-preview-stage{min-height:430px;border-radius:24px;background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.96),rgba(111,183,193,.12));display:grid;place-items:center;overflow:hidden}.motion-preview-card{width:min(300px,82%);margin:auto}.motion-preview-card img{opacity:1;filter:none}.motion-preview-card .tape{display:block}.motion-preview-card .polaroid-caption{font-weight:900;color:#718096}.motion-tuner input[type="range"].input{padding:12px;background:rgba(255,255,255,.72);accent-color:var(--accent)}.motion-tuner output{font-weight:900;color:var(--accent)}

@media(max-width:860px){.motion-tuner,.motion-controls{grid-template-columns:1fr}.motion-preview-stage{min-height:360px}.motion-preview-card{width:min(260px,84%)}}

/* === Smooth personal-home layout inspired by modern glass blog shells (v13) === */
:root{--ease-out:cubic-bezier(.16,1,.3,1);--ease-smooth:cubic-bezier(.22,.61,.36,1)}
.smooth-home{background:#eef8ff;background-image:radial-gradient(circle at 12% 10%,rgba(111,183,193,.20),transparent 28%),radial-gradient(circle at 88% 18%,rgba(255,154,158,.18),transparent 26%),linear-gradient(135deg,#f7fcff 0%,#fff7f9 52%,#f0fbff 100%)}
.smooth-home:before{opacity:.85;animation:ambientDrift 18s var(--ease-smooth) infinite alternate}.glass-card{background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(255,255,255,.46));border:1px solid rgba(255,255,255,.72);box-shadow:0 24px 70px rgba(58,91,120,.16);backdrop-filter:blur(22px) saturate(1.18);-webkit-backdrop-filter:blur(22px) saturate(1.18)}.glass-nav{backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2)}
.smooth-hero{min-height:82vh;padding:128px 24px 76px;overflow:hidden}.smooth-hero:before{background:linear-gradient(180deg,rgba(19,33,52,.28),rgba(247,252,255,.58) 62%,rgba(247,252,255,.94));}.smooth-hero:after{content:"";position:absolute;inset:auto -12% -22% -12%;height:42%;background:linear-gradient(180deg,transparent,rgba(247,252,255,.92));filter:blur(8px);pointer-events:none}.smooth-hero-grid{width:min(1180px,100%);grid-template-columns:minmax(0,1.2fr) minmax(320px,.82fr);gap:30px}.hero-intro{border-radius:36px;padding:44px;overflow:hidden}.hero-intro h1{letter-spacing:-.04em}.hero-actions{margin-top:28px;display:flex;gap:12px;flex-wrap:wrap}.profile-card{position:relative;border-radius:34px;overflow:hidden;align-self:stretch;min-height:520px;transform:translateZ(0);transition:transform .55s var(--ease-out),box-shadow .55s var(--ease-out)}.profile-cover{height:48%;min-height:250px;background-size:cover;background-position:center;filter:saturate(1.04);position:relative}.profile-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.9))}.profile-main{margin-top:-60px;position:relative;padding:0 28px 30px;text-align:center}.profile-avatar-wrap{width:122px;height:122px;border-radius:34px;padding:8px;margin:0 auto 16px;background:rgba(255,255,255,.74);box-shadow:0 18px 38px rgba(30,60,90,.16);transform:rotate(-2deg)}.profile-avatar{width:100%;height:100%;object-fit:cover;border-radius:27px;opacity:1;filter:none}.profile-main h2{font-size:1.8rem;margin:8px 0 6px}.profile-main p{color:var(--muted);line-height:1.8}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.profile-stats span{padding:12px;border-radius:18px;background:rgba(255,255,255,.58);color:var(--muted)}.profile-stats strong{display:block;color:var(--theme);font-size:1.4rem}.smooth-layout{width:min(1180px,calc(100% - 36px));display:grid;grid-template-columns:280px minmax(0,1fr);gap:28px;align-items:start;margin-top:42px}.home-sidebar{position:sticky;top:104px;display:grid;gap:18px}.sidebar-card{border-radius:28px;padding:22px}.sidebar-card img{width:76px;height:76px;border-radius:24px;object-fit:cover;opacity:1;filter:none;box-shadow:0 12px 26px rgba(70,98,120,.16)}.sidebar-card h3{font-size:1.25rem;margin:16px 0 8px}.sidebar-card p{color:var(--muted);line-height:1.9}.sidebar-links a{display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:var(--ink);font-weight:900;padding:12px 0;border-top:1px solid rgba(111,183,193,.13)}.sidebar-links a:after{content:"→";color:var(--accent);transition:transform .28s var(--ease-out)}.sidebar-links a:hover:after{transform:translateX(4px)}.content-flow{min-width:0}.flow-section{scroll-margin-top:110px}.smooth-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.smooth-feature-grid .feature-card{border-radius:30px;transform:translateZ(0);transition:transform .55s var(--ease-out),box-shadow .55s var(--ease-out),border-color .55s var(--ease-out)}.smooth-feature-grid .feature-card img{height:190px}.smooth-posts{gap:22px}.smooth-posts .post-card{grid-template-columns:260px minmax(0,1fr);border-radius:30px;min-height:250px;transform:translateZ(0);transition:transform .55s var(--ease-out),box-shadow .55s var(--ease-out),border-color .55s var(--ease-out)}.smooth-posts .post-cover{min-height:250px}.smooth-posts .post-body{padding:28px}.smooth-posts .post-body h3{font-size:1.55rem}.smooth-posts .summary{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.post-card:hover,.feature-card:hover,.profile-card:hover,.sidebar-card:hover{transform:translate3d(0,-8px,0);box-shadow:0 32px 88px rgba(58,91,120,.20);border-color:rgba(255,255,255,.92)}.post-card:hover .post-cover img,.feature-card:hover img{transform:scale(1.055)}.reveal{transform:translateY(28px) scale(.985);transition:opacity .82s var(--ease-out),transform .82s var(--ease-out)}.reveal.in-view{transform:translateY(0) scale(1)}.btn,.nav-link,button{transition:transform .32s var(--ease-out),box-shadow .32s var(--ease-out),filter .32s var(--ease-out),background .32s var(--ease-out)}.btn:hover,.nav-link:hover,button:hover{transform:translateY(-3px)}.site-nav{transition:background .38s var(--ease-out),box-shadow .38s var(--ease-out),transform .38s var(--ease-out),backdrop-filter .38s var(--ease-out)}.site-nav.is-scrolled{transform:translateX(-50%) translateY(-3px)}
[data-depth-card]{--rx:0deg;--ry:0deg;--mx:50%;--my:50%;transform:perspective(1100px) rotateX(var(--rx)) rotateY(var(--ry)) translate3d(0,0,0)}[data-depth-card]:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at var(--mx) var(--my),rgba(255,255,255,.34),transparent 38%);opacity:0;transition:opacity .42s var(--ease-out);pointer-events:none;z-index:2}[data-depth-card]:hover:before{opacity:1}.sidebar-card[data-depth-card]{position:relative;overflow:hidden}
@keyframes ambientDrift{from{transform:translate3d(-1.5%,-1%,0) scale(1)}to{transform:translate3d(1.5%,1%,0) scale(1.03)}}

@media(max-width:980px){.smooth-hero-grid,.smooth-layout{grid-template-columns:1fr}.home-sidebar{position:relative;top:auto;grid-template-columns:1fr 1fr}.smooth-posts .post-card{grid-template-columns:220px 1fr}.profile-card{min-height:460px}}
@media(max-width:700px){.smooth-hero{padding-top:108px}.hero-intro{padding:30px}.profile-card{min-height:auto}.profile-cover{min-height:210px}.smooth-layout{width:min(100% - 28px,1180px);margin-top:28px}.home-sidebar,.smooth-feature-grid,.smooth-posts .post-card{grid-template-columns:1fr}.smooth-posts .post-cover{min-height:220px}.site-nav.is-scrolled{transform:none}.profile-stats{grid-template-columns:1fr 1fr 1fr}}
@media(prefers-reduced-motion:reduce){.smooth-home:before{animation:none}[data-depth-card]{transform:none!important}[data-depth-card]:before{display:none}.post-card:hover,.feature-card:hover,.profile-card:hover,.sidebar-card:hover{transform:none}}

/* === Sakura-inspired homepage rewrite (v14) ===
   Inspired by the open-source Sakura theme structure: headertop cover, focusinfo,
   Discovery title, alternating post-list-thumb cards, soft entrance animations. */
.sakura-home{background:#fff;color:#504e4e}.sakura-home .container{width:min(860px,calc(100% - 32px))}.scrollbar{position:fixed;top:0;left:0;height:3px;width:var(--scroll-progress,0%);background:linear-gradient(90deg,var(--theme),var(--accent));z-index:9999;box-shadow:0 0 10px rgba(255,154,158,.45)}.sakura-nav{background:rgba(255,255,255,.74);border-color:rgba(255,255,255,.9);box-shadow:0 6px 26px rgba(0,0,0,.08);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.sakura-nav .brand{font-family:'Noto Serif SC',serif;color:#555}.sakura-cover{height:550px;position:relative;display:grid;place-items:center;overflow:hidden;background-position:top center;background-repeat:no-repeat;background-size:cover;background-attachment:fixed}.sakura-cover:before{content:"";position:absolute;inset:0;z-index:1;background-image:radial-gradient(rgba(255,255,255,.22) 1px,transparent 1px);background-size:4px 4px;opacity:.7}.sakura-cover-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(255,255,255,.16));z-index:2}.focusinfo{position:relative;z-index:3;max-width:800px;text-align:center;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.28);padding:0 20px}.focusinfo .header-tou img{width:130px;height:130px;border-radius:100%;padding:5px;background:rgba(255,255,255,.34);box-shadow:0 0 0 1px rgba(255,255,255,.55),0 12px 32px rgba(0,0,0,.22);object-fit:cover;opacity:1;filter:none;transition:transform .8s cubic-bezier(.16,1,.3,1),box-shadow .8s cubic-bezier(.16,1,.3,1)}.focusinfo .header-tou img:hover{transform:rotate(360deg);box-shadow:0 0 0 1px rgba(255,255,255,.8),0 18px 46px rgba(0,0,0,.25)}.center-text{font-family:'Noto Serif SC',serif;font-size:clamp(2.4rem,7vw,5.8rem);font-weight:900;letter-spacing:.04em;margin:18px 0 8px}.header-info p{font-size:1.15rem;letter-spacing:.08em}.top-social_v2{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:18px}.top-social_v2 a{color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.55);background:rgba(255,255,255,.15);border-radius:999px;padding:8px 16px;backdrop-filter:blur(10px);transition:all .35s cubic-bezier(.16,1,.3,1)}.top-social_v2 a:hover{background:rgba(255,255,255,.32);transform:translateY(-3px)}.cover-scroll{position:absolute;z-index:5;bottom:38px;left:50%;transform:translateX(-50%);width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:#fff;text-decoration:none;font-size:30px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.45);animation:sakuraBounce 1.8s ease-in-out infinite}.headertop-bar{position:relative;height:0}.headertop-bar:after{content:"";width:150%;height:70px;background:#fff;left:-25%;bottom:-24px;border-radius:100%;position:absolute;z-index:4;transform:translateY(-46px)}.sakura-content{position:relative;z-index:6;background:#fff;padding-top:52px}.sakura-notice{max-width:860px;margin:0 auto 42px;padding:18px 24px;border-radius:12px;background:rgba(255,255,255,.86);box-shadow:0 1px 20px -8px rgba(0,0,0,.45);display:flex;gap:12px;align-items:center;color:#666}.content-area,.top-feature-area{max-width:860px;margin:0 auto;padding:0 10px}.main-title{font-family:'Noto Serif SC',serif;text-align:center;font-size:1.55rem;font-weight:400;color:#666;margin:30px 0 36px}.main-title span{color:var(--theme);margin-right:8px}.sakura-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:56px}.sakura-feature-card{position:relative;overflow:hidden;border-radius:10px;background:#fff;box-shadow:0 1px 20px -8px rgba(0,0,0,.5);min-height:220px;transition:transform .65s cubic-bezier(.16,1,.3,1),box-shadow .65s cubic-bezier(.16,1,.3,1)}.sakura-feature-card:hover{transform:translateY(-7px);box-shadow:0 14px 38px -18px rgba(0,0,0,.58)}.feature-thumb{display:block;height:128px;overflow:hidden}.feature-thumb img{width:100%;height:100%;object-fit:cover;opacity:1;filter:none;transition:transform .75s cubic-bezier(.16,1,.3,1)}.sakura-feature-card:hover .feature-thumb img{transform:scale(1.09)}.feature-copy{padding:15px}.feature-copy h3{font-size:1.05rem;margin:0 0 8px;color:#504e4e}.feature-copy p{font-size:.9rem;line-height:1.75;color:rgba(0,0,0,.62);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.sakura-post-list{display:grid;gap:28px}.post-list-thumb{will-change:transform;float:none;width:100%;height:300px;position:relative;margin:0;border-radius:10px;background:#fff;box-shadow:0 1px 20px -8px rgba(0,0,0,.5);opacity:0;overflow:hidden;display:grid;grid-template-columns:40% 60%;transition:box-shadow .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1)}.post-list-thumb.in-view,.post-list-thumb.post-list-show{opacity:1}.post-list-thumb:hover{box-shadow:0 18px 46px -24px rgba(0,0,0,.62);transform:translateY(-5px)}.post-list-thumb-left{grid-template-columns:60% 40%}.post-list-thumb-left .post-thumb{order:-1}.post-thumb{width:100%;height:300px;float:none}.post-thumb a{height:300px;position:relative;display:block;overflow:hidden;border-radius:0 10px 10px 0}.post-list-thumb-left .post-thumb a{border-radius:10px 0 0 10px}.post-thumb img{width:100%;height:100%;object-fit:cover;opacity:1;filter:none;transition:transform .75s cubic-bezier(.16,1,.3,1)}.post-thumb a:hover img,.post-list-thumb:hover .post-thumb img{transform:scale(1.08)}.post-content-wrap{position:relative;display:block;float:none;width:100%;margin:0;padding:28px 30px}.post-date,.post-meta,.post-meta a{color:#888;font-size:12px}.post-title h3{font-size:1.35rem;font-weight:400;line-height:1.45;margin:12px 0 8px;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.post-title a{color:#504e4e;text-decoration:none}.post-title a:hover{color:orange}.float-content{position:relative;width:100%;z-index:2;color:rgba(0,0,0,.66)}.float-content p{font-size:14px;line-height:1.9;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;margin:14px 0}.post-bottom{text-align:right;margin-top:8px}.post-more{color:#666;text-decoration:none;font-weight:800;transition:color .3s ease,transform .3s ease;display:inline-block}.post-more:hover{color:#000;transform:translateX(3px)}.sakura-footer{margin-top:80px}.sakura-home .tag{background:rgba(187,226,219,.35);color:#5f9991}.sakura-home .badge{z-index:3;box-shadow:0 6px 16px rgba(0,0,0,.14)}
@keyframes sakuraBounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}
.sakura-home .reveal{opacity:0;transform:translateY(80px);transition:opacity .72s cubic-bezier(.16,1,.3,1),transform .72s cubic-bezier(.16,1,.3,1)}.sakura-home .reveal.in-view{opacity:1;transform:translateY(0)}
@media(max-width:860px){.sakura-cover{height:360px;background-attachment:scroll}.focusinfo .header-tou img{width:96px;height:96px}.sakura-feature-grid{grid-template-columns:1fr}.post-list-thumb,.post-list-thumb-left{height:auto;grid-template-columns:1fr;box-shadow:none;border:0;border-radius:0;overflow:visible}.post-thumb{height:220px}.post-thumb a,.post-list-thumb-left .post-thumb a{height:220px;border-radius:10px}.post-content-wrap{padding:20px 4px 26px}.sakura-notice,.content-area,.top-feature-area{width:calc(100% - 28px);padding:0}.sakura-nav{left:12px;right:12px;transform:none}.headertop-bar:after{height:46px;bottom:-12px}} 
@media(prefers-reduced-motion:reduce){.cover-scroll{animation:none}.focusinfo .header-tou img:hover{transform:none}.post-thumb img,.feature-thumb img{transition:none}.sakura-home .reveal{opacity:1;transform:none;transition:none}}

/* === Sakura polish pass (v15): remove white nav/social lines + closer Sakura rhythm === */
.sakura-home .sakura-nav,
.sakura-home .sakura-nav .nav-link,
.sakura-home .sakura-nav .nav-link.secondary,
.sakura-home .top-social_v2 a{
  border:0!important;
  outline:0!important;
  text-decoration:none!important;
}
.sakura-home .sakura-nav{padding:8px 18px;background:rgba(255,255,255,.68);box-shadow:0 8px 28px rgba(40,40,40,.08)}
.sakura-home .sakura-nav:before,
.sakura-home .sakura-nav:after,
.sakura-home .sakura-nav .nav-link:before,
.sakura-home .sakura-nav .nav-link:after,
.sakura-home .top-social_v2 a:before,
.sakura-home .top-social_v2 a:after{display:none!important;content:none!important}
.sakura-home .sakura-nav .nav-link{background:transparent!important;box-shadow:none!important;color:#666!important;border-radius:0!important;padding:9px 12px!important;overflow:visible;font-weight:600;letter-spacing:.03em;transition:color .35s ease,transform .35s cubic-bezier(.16,1,.3,1),background .35s ease!important}
.sakura-home .sakura-nav .nav-link:hover{color:orange!important;background:rgba(255,255,255,.34)!important;transform:translateY(-2px)!important;filter:none!important}
.sakura-home .sakura-nav .nav-link:active{transform:translateY(0)!important}
.sakura-home .top-social_v2 a{background:rgba(255,255,255,.20);box-shadow:0 8px 24px rgba(0,0,0,.08);line-height:1;position:relative;overflow:hidden}
.sakura-home .top-social_v2 a:hover{color:#fff;background:rgba(255,255,255,.34);box-shadow:0 12px 30px rgba(0,0,0,.12)}
.sakura-cover:before{background-image:linear-gradient(rgba(255,255,255,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.11) 1px,transparent 1px);background-size:18px 18px;opacity:.46;mix-blend-mode:soft-light}.sakura-cover-overlay{background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.04) 45%,rgba(255,255,255,.24))}.focusinfo{animation:sakuraFocusIn .8s cubic-bezier(.16,1,.3,1) both}.header-info p{display:inline-block;padding:8px 18px;border-radius:999px;background:rgba(0,0,0,.12);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.sakura-notice{position:relative;overflow:hidden}.sakura-notice:before{content:"";position:absolute;inset:0 auto 0 -35%;width:30%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-18deg);animation:sakuraNoticeShine 5.6s ease-in-out infinite}.sakura-feature-card,.post-list-thumb{border:1px solid rgba(0,0,0,.035)}.post-list-thumb:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.22) 38%,transparent 68%);transform:translateX(-135%) skewX(-12deg);transition:transform .8s cubic-bezier(.16,1,.3,1)}.post-list-thumb:hover:after{transform:translateX(135%) skewX(-12deg)}.post-meta{letter-spacing:.02em}.post-title h3{font-family:'Noto Serif SC',serif}.float-content p{text-align:justify}.sakura-home .tag{border-radius:3px;padding:4px 8px;background:#f5f5f5;color:#888}.sakura-home .tag:hover{background:#ffe8d3;color:#d28a2e;transform:translateY(-1px)}
@keyframes sakuraFocusIn{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}@keyframes sakuraNoticeShine{0%,55%{transform:translateX(0) skewX(-18deg);opacity:0}70%{opacity:1}100%{transform:translateX(520%) skewX(-18deg);opacity:0}}
@media(max-width:860px){.sakura-home .sakura-nav{padding:8px 10px}.sakura-home .sakura-nav .nav-link{padding:8px 10px!important}.header-info p{border-radius:16px}.sakura-cover:before{background-size:14px 14px}.useful-overview-grid{grid-template-columns:1fr}.useful-action-stats{grid-template-columns:1fr 1fr}}

/* === Fix Sakura top nav white block (v16) ===
   Remove the actual translucent white navbar plate that was covering the cover image. */
.sakura-home .site-nav.sakura-nav,
.sakura-home .site-nav.sakura-nav.is-scrolled{
  background:transparent!important;
  background-color:transparent!important;
  box-shadow:none!important;
  border:0!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.sakura-home .site-nav.sakura-nav,
.sakura-home .site-nav.sakura-nav.is-scrolled{
  left:24px!important;
  right:auto!important;
  transform:none!important;
  justify-content:flex-start;
}
.sakura-home .site-nav.sakura-nav .brand,
.sakura-home .site-nav.sakura-nav .nav-link{
  background:transparent!important;
  background-color:transparent!important;
  box-shadow:none!important;
  border:0!important;
  text-shadow:0 2px 10px rgba(0,0,0,.28);
}
.sakura-home .site-nav.sakura-nav .brand{color:#fff!important}.sakura-home .site-nav.sakura-nav .nav-link{color:#fff!important}.sakura-home .site-nav.sakura-nav .nav-link:hover{color:#ffd28a!important;background:rgba(0,0,0,.10)!important;border-radius:999px!important}
.useful-overview-area{margin-bottom:58px}.useful-overview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:56px}.useful-overview-card{padding:22px;border-radius:14px;background:#fff;box-shadow:0 1px 20px -8px rgba(0,0,0,.45);border:1px solid rgba(0,0,0,.04);display:flex;flex-direction:column;gap:12px;min-height:260px}.useful-overview-kicker{font-size:.78rem;font-weight:900;letter-spacing:.08em;color:var(--theme);text-transform:uppercase}.useful-overview-card h3{margin:0;font-size:1.18rem;color:#504e4e}.useful-overview-card p{margin:0;color:rgba(0,0,0,.66);line-height:1.85}.useful-overview-meta{display:flex;gap:10px;flex-wrap:wrap;color:#888;font-size:.85rem}.useful-topic-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}.useful-topic-chip{display:inline-flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:10px;background:#f8f8f8;color:#666;min-width:110px}.useful-topic-chip b{font-size:.95rem;color:#504e4e}.useful-topic-chip small{font-size:.76rem;color:#888}.useful-action-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto}.useful-action-stats span{padding:12px;border-radius:10px;background:#f8f8f8;text-align:center}.useful-action-stats strong{display:block;font-size:1rem;color:#504e4e}.useful-action-stats small{display:block;margin-top:4px;color:#888}.useful-action-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}

/* === Remove remaining Sakura cover obstruction (v17) ===
   User requested deleting the white cover-bottom arc/block and the floating v button. */
.sakura-home .headertop-bar,
.sakura-home .headertop-bar:before,
.sakura-home .headertop-bar:after,
.sakura-home .cover-scroll{
  display:none!important;
  content:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.sakura-home .sakura-cover{margin-bottom:0!important}.sakura-home .sakura-content{padding-top:42px!important;margin-top:0!important}

/* === Sakura smoothness + side cat widget (v18) === */
html.sakura-smooth-active{scroll-behavior:auto!important}html.sakura-smooth-active body{overscroll-behavior-y:none}.sakura-home .site-content{will-change:transform}.sakura-home .post-list-thumb{transition:opacity .72s cubic-bezier(.16,1,.3,1),transform .72s cubic-bezier(.16,1,.3,1),box-shadow .65s cubic-bezier(.16,1,.3,1)}.sakura-home .post-list-thumb:not(.in-view){transform:translateY(80px)}.sakura-home .post-list-thumb.in-view{animation:post-list-show .55s cubic-bezier(.16,1,.3,1) both}.sakura-home .sakura-cover{transform:translate3d(0,calc(var(--cover-parallax,0px) * .18),0);will-change:transform}.sakura-home .focusinfo{transform:translate3d(0,calc(var(--cover-parallax,0px) * -.12),0);will-change:transform}.sakura-home .scrollbar{height:4px;background:orange!important;transition:width .08s linear;border-radius:0 999px 999px 0}.sakura-neko{position:fixed;right:-10px;top:42%;z-index:120;width:86px;height:118px;pointer-events:auto;transform:translateX(48px);transition:transform .55s cubic-bezier(.16,1,.3,1),filter .55s ease;filter:drop-shadow(0 10px 18px rgba(0,0,0,.18));cursor:pointer}.sakura-neko:hover{transform:translateX(0)}.neko-paw{position:absolute;left:8px;top:0;width:44px;height:18px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px 16px 10px 10px;box-shadow:inset 0 -4px 0 rgba(255,154,158,.13)}.neko-body{position:absolute;right:0;top:12px;width:72px;height:92px;background:linear-gradient(135deg,#fff,#fff7f8);border:1px solid rgba(0,0,0,.08);border-radius:30px 0 0 30px;box-shadow:0 1px 20px -8px rgba(0,0,0,.55);display:grid;place-items:center;animation:nekoHang 4.8s ease-in-out infinite}.neko-ear{position:absolute;top:-10px;width:22px;height:22px;background:#fff;border:1px solid rgba(0,0,0,.08);transform:rotate(45deg);border-radius:4px}.neko-ear.left{left:16px}.neko-ear.right{right:18px}.neko-face{font-size:13px;color:#666;writing-mode:vertical-rl;letter-spacing:.08em;font-weight:900;user-select:none}.neko-tail{position:absolute;right:-14px;bottom:12px;width:28px;height:42px;border:7px solid #fff;border-left:0;border-bottom:0;border-radius:0 30px 0 0;transform:rotate(18deg);filter:drop-shadow(0 1px 0 rgba(0,0,0,.08));animation:nekoTail 2.8s ease-in-out infinite}.sakura-neko:after{content:"小白猫";position:absolute;right:78px;top:34px;white-space:nowrap;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.92);color:#777;font-size:12px;box-shadow:0 8px 22px rgba(0,0,0,.12);opacity:0;transform:translateX(8px);transition:.35s cubic-bezier(.16,1,.3,1)}.sakura-neko:hover:after{opacity:1;transform:none}@keyframes nekoHang{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(5px) rotate(1deg)}}@keyframes nekoTail{0%,100%{transform:rotate(18deg)}50%{transform:rotate(34deg)}}
@media(max-width:860px){.sakura-neko{display:none}.sakura-home .sakura-cover,.sakura-home .focusinfo{transform:none!important}}@media(prefers-reduced-motion:reduce){html.sakura-smooth-active body{overscroll-behavior:auto}.sakura-neko .neko-body,.neko-tail{animation:none}.sakura-home .post-list-thumb.in-view{animation:none}.sakura-home .sakura-cover,.sakura-home .focusinfo{transform:none!important}}

/* === Real Sakura-style side Live2D cat widget (v19) ===
   Sakura exposes #live2d, .prpr, .mashiro-tips and .live2d-tool styles; this
   ports that structure and supplies a lightweight CSS cat so it is visible
   without external model assets. */
.sakura-live2d-widget{position:fixed;left:0;bottom:0;width:190px;height:245px;z-index:999;pointer-events:none;transform:translateX(-92px);transition:transform .55s cubic-bezier(.16,1,.3,1),opacity .35s ease}.sakura-live2d-widget:hover,.sakura-live2d-widget.is-open{transform:translateX(0)}.sakura-live2d-widget.is-hidden{transform:translateX(-172px);opacity:.72}.sakura-live2d-widget .mashiro-tips{opacity:0;left:82px;bottom:178px;width:160px;min-height:42px;margin:0;padding:9px 12px;border-radius:12px;box-sizing:border-box;box-shadow:0 0 2px 0 rgba(0,0,0,.12),0 2px 12px rgba(0,0,0,.18);transition:opacity .35s ease,transform .35s cubic-bezier(.16,1,.3,1);background:#fff;color:#555;font-size:12px;line-height:1.6;position:absolute;animation:shake 50s ease-in-out 5s infinite;pointer-events:none;transform:translateY(8px)}.sakura-live2d-widget:hover .mashiro-tips,.sakura-live2d-widget.is-open .mashiro-tips{opacity:1;transform:translateY(0)}.sakura-live2d-widget #live2d{position:absolute;left:18px;bottom:8px;width:136px;height:178px;z-index:99;pointer-events:auto;cursor:pointer;filter:drop-shadow(0 12px 20px rgba(0,0,0,.22));animation:live2dFloat 4.8s ease-in-out infinite}.cat-rope{position:absolute;left:63px;top:-56px;width:3px;height:78px;background:linear-gradient(#e9d8b8,#c7aa7a);border-radius:999px}.cat-head{position:absolute;left:24px;top:16px;width:92px;height:82px;background:linear-gradient(135deg,#fff,#fff4f6);border:1px solid rgba(0,0,0,.08);border-radius:46px 46px 38px 38px;box-shadow:inset 0 -8px 0 rgba(255,154,158,.08)}.cat-ear{position:absolute;top:-16px;width:34px;height:34px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:7px;transform:rotate(45deg);z-index:-1}.cat-ear:after{content:"";position:absolute;inset:8px;background:#ffd8df;border-radius:4px}.cat-ear-left{left:11px}.cat-ear-right{right:11px}.cat-eye{position:absolute;top:34px;width:10px;height:15px;background:#555;border-radius:999px;animation:catBlink 5.2s ease-in-out infinite}.cat-eye-left{left:27px}.cat-eye-right{right:27px}.cat-mouth{position:absolute;left:0;right:0;top:50px;text-align:center;color:#777;font-weight:900;font-size:18px;line-height:1}.cat-whisker{position:absolute;top:52px;width:24px;height:1px;background:#b8b8b8}.cat-whisker:before,.cat-whisker:after{content:"";position:absolute;left:0;width:24px;height:1px;background:#b8b8b8}.cat-whisker:before{top:-7px;transform:rotate(10deg)}.cat-whisker:after{top:7px;transform:rotate(-10deg)}.cat-whisker-left{left:-10px}.cat-whisker-right{right:-10px;transform:scaleX(-1)}.cat-body{position:absolute;left:32px;top:88px;width:76px;height:82px;background:linear-gradient(135deg,#fff,#fff8fa);border:1px solid rgba(0,0,0,.08);border-radius:34px 34px 24px 24px}.cat-paw{position:absolute;top:-6px;width:22px;height:38px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:999px;box-shadow:inset 0 -5px 0 rgba(255,154,158,.10)}.cat-paw-left{left:11px;transform:rotate(8deg)}.cat-paw-right{right:11px;transform:rotate(-8deg)}.cat-tail{position:absolute;right:-26px;bottom:14px;width:42px;height:58px;border:11px solid #fff;border-left:0;border-bottom:0;border-radius:0 42px 0 0;transform-origin:left bottom;transform:rotate(12deg);filter:drop-shadow(0 1px 0 rgba(0,0,0,.08));animation:catTailWave 2.6s ease-in-out infinite}.sakura-live2d-widget .live2d-tool{pointer-events:auto;position:absolute;left:0;width:35px;margin-left:-35px;color:#fff;font-size:13px;padding:7px 0 7px 17px;font-weight:700;z-index:100;writing-mode:vertical-rl;border-radius:0 6px 6px 0!important;border:0;cursor:pointer;transition:margin-left .45s cubic-bezier(.16,1,.3,1),filter .3s ease;font-family:Ubuntu,system-ui,sans-serif;box-shadow:0 8px 18px rgba(0,0,0,.16)}.sakura-live2d-widget .live2d-tool:hover{margin-left:-17px;filter:brightness(1.04)}.sakura-live2d-widget .hide-live2d{background-color:orange;bottom:156px;visibility:visible;min-height:38.75px}.sakura-live2d-widget .switch-live2d{background-color:#F7BB4D;bottom:105px;visibility:visible;min-height:51px}.sakura-live2d-widget.is-hidden #live2d,.sakura-live2d-widget.is-hidden .mashiro-tips{opacity:0;pointer-events:none}.sakura-live2d-widget.is-hidden .switch-live2d{visibility:hidden}.sakura-live2d-widget.is-waving #live2d{animation:live2dWave .7s cubic-bezier(.16,1,.3,1) 2}.sakura-neko{display:none!important}
@keyframes live2dFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(7px) rotate(1deg)}}@keyframes live2dWave{0%,100%{transform:translateY(0) rotate(-1deg)}35%{transform:translateY(-7px) rotate(-7deg)}70%{transform:translateY(4px) rotate(6deg)}}@keyframes catTailWave{0%,100%{transform:rotate(12deg)}50%{transform:rotate(34deg)}}@keyframes catBlink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.12)}}
@media(max-width:860px){.sakura-live2d-widget{display:block!important;left:0;bottom:0;transform:translateX(-112px) scale(.78);transform-origin:left bottom}.sakura-live2d-widget:hover,.sakura-live2d-widget.is-open{transform:translateX(-16px) scale(.78)}.sakura-live2d-widget .mashiro-tips{display:none}.sakura-live2d-widget .live2d-tool{transform:scale(.9);transform-origin:left bottom}}
@media(prefers-reduced-motion:reduce){.sakura-live2d-widget #live2d,.cat-tail,.cat-eye,.sakura-live2d-widget .mashiro-tips{animation:none!important}}

/* === Force visible Sakura cat asset (v20) === */
.sakura-live2d-widget{
  display:block!important;
  position:fixed!important;
  left:0!important;
  bottom:18px!important;
  width:210px!important;
  height:280px!important;
  z-index:2147483000!important;
  pointer-events:none!important;
  opacity:1!important;
  visibility:visible!important;
  transform:translateX(0)!important;
}
.sakura-live2d-widget #live2d{
  display:block!important;
  position:absolute!important;
  left:14px!important;
  bottom:0!important;
  width:150px!important;
  height:210px!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  background:transparent!important;
  animation:live2dFloat 4.8s ease-in-out infinite!important;
}
.sakura-cat-img{
  display:block!important;
  width:150px!important;
  height:auto!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  transform:none!important;
  border:0!important;
  background:transparent!important;
  transition:transform .45s cubic-bezier(.16,1,.3,1)!important;
}
.sakura-live2d-widget:hover .sakura-cat-img{transform:translateY(-4px) rotate(-2deg)!important}.sakura-live2d-widget .cat-rope,.sakura-live2d-widget .cat-head,.sakura-live2d-widget .cat-body{display:none!important}.sakura-live2d-widget .mashiro-tips{display:block!important;left:120px!important;bottom:184px!important;z-index:2147483001!important}.sakura-live2d-widget .live2d-tool{pointer-events:auto!important;z-index:2147483002!important}.sakura-live2d-widget.is-hidden{transform:translateX(-136px)!important}.sakura-live2d-widget.is-hidden #live2d{opacity:.35!important;visibility:visible!important}.sakura-neko{display:none!important}
@media(max-width:860px){.sakura-live2d-widget{display:block!important;transform:scale(.72)!important;transform-origin:left bottom!important;left:0!important;bottom:6px!important}.sakura-live2d-widget:hover,.sakura-live2d-widget.is-open{transform:scale(.72)!important}.sakura-live2d-widget #live2d{display:block!important}.sakura-cat-img{display:block!important;opacity:1!important;visibility:visible!important}}

/* === Anime cat visual upgrade (v21) === */
.sakura-live2d-widget #live2d{width:172px!important;height:236px!important;left:8px!important}.sakura-cat-img{width:172px!important;filter:drop-shadow(0 14px 20px rgba(126,91,132,.24))!important}.sakura-live2d-widget:hover .sakura-cat-img{transform:translateY(-6px) rotate(-2.5deg) scale(1.02)!important}.sakura-live2d-widget .mashiro-tips{background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(255,244,249,.96))!important;border:1px solid rgba(255,175,208,.45)!important;color:#7a6072!important}.sakura-live2d-widget .hide-live2d{background:linear-gradient(180deg,#ffb4d0,#ff91b8)!important}.sakura-live2d-widget .switch-live2d{background:linear-gradient(180deg,#95e3ff,#ffb4d0)!important}

/* === Replace handmade cat with fetched anime neko image (v22) === */
.sakura-live2d-widget{width:230px!important;height:300px!important;bottom:20px!important}.sakura-live2d-widget #live2d{width:178px!important;height:244px!important;left:10px!important;bottom:0!important;border-radius:24px!important;overflow:visible!important}.sakura-cat-img{width:178px!important;height:244px!important;object-fit:cover!important;object-position:center top!important;border-radius:26px!important;border:3px solid rgba(255,255,255,.92)!important;background:#fff!important;box-shadow:0 16px 38px rgba(80,58,95,.24),0 0 0 1px rgba(255,154,190,.22)!important;filter:none!important}.sakura-cat-img:after{display:none}.sakura-live2d-widget #live2d:after{content:"";position:absolute;inset:0;border-radius:26px;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 58%,rgba(255,154,190,.18));z-index:2}.sakura-live2d-widget #live2d:before{content:"✦";position:absolute;right:-8px;top:-14px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#9ee7ff,#ffb4d0);color:#fff;z-index:3;box-shadow:0 8px 20px rgba(80,58,95,.18)}.sakura-live2d-widget:hover .sakura-cat-img{transform:translateY(-5px) scale(1.025)!important}.sakura-live2d-widget .mashiro-tips{left:132px!important;bottom:206px!important}.sakura-live2d-widget .mashiro-tips:before{content:"";position:absolute;left:-8px;bottom:14px;border:8px solid transparent;border-right-color:rgba(255,255,255,.96)}
@media(max-width:860px){.sakura-live2d-widget{transform:scale(.68)!important;bottom:4px!important}.sakura-live2d-widget:hover,.sakura-live2d-widget.is-open{transform:scale(.68)!important}}

/* === Transparent Live2D texture sticker (v23) === */
.sakura-live2d-widget{width:260px!important;height:340px!important;bottom:0!important;left:0!important;transform:translateX(0)!important}.sakura-live2d-widget #live2d{width:230px!important;height:320px!important;left:-18px!important;bottom:0!important;border-radius:0!important;overflow:visible!important;background:transparent!important;filter:drop-shadow(0 16px 22px rgba(70,45,80,.22))!important}.sakura-cat-img{width:230px!important;height:320px!important;object-fit:contain!important;object-position:left bottom!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;filter:none!important}.sakura-live2d-widget #live2d:after,.sakura-live2d-widget #live2d:before{display:none!important;content:none!important}.sakura-live2d-widget:hover .sakura-cat-img{transform:translateY(-6px) rotate(-1.5deg) scale(1.02)!important}.sakura-live2d-widget .mashiro-tips{left:142px!important;bottom:236px!important}.sakura-live2d-widget .live2d-tool{left:0!important}@media(max-width:860px){.sakura-live2d-widget{display:block!important;transform:scale(.62)!important;transform-origin:left bottom!important}.sakura-live2d-widget:hover,.sakura-live2d-widget.is-open{transform:scale(.62)!important}.sakura-cat-img{background:transparent!important;border:0!important;box-shadow:none!important}}

/* === Nachoneko sticker pass (v25): smaller emote === */
.sakura-live2d-widget{width:140px!important;height:160px!important;bottom:12px!important;left:6px!important}
.sakura-live2d-widget #live2d{width:108px!important;height:108px!important;left:8px!important;bottom:8px!important;display:grid!important;place-items:end center!important}
.nachoneko-cat{width:108px!important;height:108px!important;object-fit:contain!important;object-position:center bottom!important;image-rendering:auto!important;cursor:pointer!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;filter:drop-shadow(0 8px 12px rgba(80,55,90,.22))!important;transition:transform .35s cubic-bezier(.16,1,.3,1)!important}
.sakura-live2d-widget:hover .nachoneko-cat{transform:translateY(-3px) scale(1.04)!important}
.sakura-live2d-widget.is-waving .nachoneko-cat{animation:nachonekoBounce .55s cubic-bezier(.16,1,.3,1) 1!important}
@keyframes nachonekoBounce{0%{transform:translateY(0) scale(1)}45%{transform:translateY(-8px) scale(1.06) rotate(-3deg)}100%{transform:translateY(0) scale(1)}}
.sakura-live2d-widget .mashiro-tips{left:96px!important;bottom:108px!important;width:140px!important;font-size:11px!important;padding:7px 10px!important}
.sakura-live2d-widget .live2d-tool{font-size:11px!important;padding:5px 0 5px 13px!important;width:28px!important;margin-left:-28px!important}
.sakura-live2d-widget .live2d-tool:hover{margin-left:-14px!important}
.sakura-live2d-widget .hide-live2d{bottom:96px!important;min-height:30px!important}
.sakura-live2d-widget .switch-live2d{bottom:60px!important;min-height:36px!important}
@media(max-width:860px){.sakura-live2d-widget{width:118px!important;height:140px!important}.sakura-live2d-widget #live2d{width:90px!important;height:90px!important}.nachoneko-cat{width:90px!important;height:90px!important}}

/* === Nachoneko anti-jank swap (v26): pre-render 8 images and only toggle opacity === */
.nachoneko-stack{position:relative;width:100%;height:100%}.nachoneko-stack .nachoneko-cat{position:absolute;inset:0;opacity:0;visibility:hidden;transform:translateZ(0);will-change:opacity,transform;pointer-events:none;transition:opacity .14s linear,transform .2s cubic-bezier(.16,1,.3,1)!important}.nachoneko-stack .nachoneko-cat.is-active{opacity:1;visibility:visible;pointer-events:auto}.sakura-live2d-widget:hover .nachoneko-stack .nachoneko-cat.is-active{transform:translateY(-3px) scale(1.04)!important}.sakura-live2d-widget.is-waving .nachoneko-stack .nachoneko-cat.is-active{animation:nachonekoBounce .32s cubic-bezier(.16,1,.3,1) 1!important}

/* === Emergency fix (v27): revert stacked nachoneko rendering === */
.nachoneko-stack{display:none!important}
#live2d > .nachoneko-cat{display:block!important;position:static!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
#live2d > .nachoneko-cat.is-active{opacity:1!important;visibility:visible!important}
.sakura-live2d-widget:hover #live2d > .nachoneko-cat{transform:translateY(-3px) scale(1.04)!important}
.sakura-live2d-widget.is-waving #live2d > .nachoneko-cat{animation:nachonekoBounce .32s cubic-bezier(.16,1,.3,1) 1!important}

/* === Draggable nachoneko widget (v28) === */
.sakura-live2d-widget{right:auto!important;transform:none!important;transition:opacity .25s ease!important}.sakura-live2d-widget:hover,.sakura-live2d-widget.is-open{transform:none!important}.sakura-live2d-widget #live2d{cursor:grab!important;touch-action:none!important;user-select:none!important;-webkit-user-select:none!important}.sakura-live2d-widget.is-dragging,.sakura-live2d-widget.is-dragging *{transition:none!important;cursor:grabbing!important}.sakura-live2d-widget.is-hidden{opacity:.38!important}
@media(max-width:860px){.sakura-live2d-widget{transform:none!important;left:6px!important;bottom:auto!important}}

/* === Drag fix polish (v29) === */
.sakura-live2d-widget{margin:0!important}.sakura-live2d-widget #live2d,.sakura-live2d-widget .nachoneko-cat{pointer-events:auto!important}.sakura-live2d-widget .mashiro-tips{pointer-events:none!important}

/* === Free-direction drag override (v30) === */
.sakura-live2d-widget{right:auto!important;bottom:auto!important;left:auto;top:auto}

/* === Admin album + image refresh controls (v22) === */
.admin-quick-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.inline-switch{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.62);border:1px solid rgba(111,183,193,.14)}.inline-switch label{font-weight:800;color:var(--ink)}.auto-image-setting small,.muted-note{color:var(--muted);line-height:1.7}.image-picker-field .btn{width:max-content}.album-panel{scroll-margin-top:110px}.album-upload{display:grid;grid-template-columns:minmax(140px,1fr) minmax(180px,1.2fr) auto;gap:10px;align-items:center;margin:0}.album-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;margin-top:18px}.album-card{display:grid;gap:10px;padding:12px;border-radius:22px;background:rgba(255,255,255,.74);border:1px solid rgba(111,183,193,.14);box-shadow:0 10px 24px rgba(70,98,120,.08)}.album-pick{padding:0!important;border-radius:18px!important;background:#fff!important;box-shadow:none!important;color:var(--ink)!important;display:block;overflow:hidden;border:1px solid rgba(0,0,0,.05)!important}.album-pick img{display:block;width:100%;height:128px;object-fit:cover;opacity:1;filter:none}.album-pick span{display:block;padding:10px 12px;text-align:left;font-weight:800;color:var(--muted);background:rgba(255,255,255,.82)}.album-meta{display:grid;gap:4px;min-width:0}.album-meta strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.album-meta span{font-size:.82rem;color:var(--muted)}.album-card form{margin:0}.album-card .danger{width:100%;padding:9px 12px}.album-modal{position:fixed;inset:0;z-index:500;background:rgba(20,30,48,.38);backdrop-filter:blur(10px);padding:24px;display:grid;place-items:center}.album-modal[hidden]{display:none!important}.album-modal-card{width:min(980px,100%);max-height:min(760px,92vh);overflow:auto;background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.8);border-radius:30px;box-shadow:0 30px 90px rgba(20,30,48,.24);padding:24px}.picker-grid .album-pick{cursor:pointer;text-align:left}.picker-grid .album-pick:hover,.album-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(70,98,120,.13)!important}.picker-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
@media(max-width:860px){.admin-quick-actions,.album-upload{grid-template-columns:1fr;width:100%}.album-upload{display:grid}.album-grid{grid-template-columns:repeat(auto-fill,minmax(135px,1fr))}.album-pick img{height:104px}.album-modal{padding:12px}.album-modal-card{padding:18px}}

.picker-target-flash{animation:pickerFlash 1.1s ease}
@keyframes pickerFlash{0%{box-shadow:0 0 0 0 rgba(111,183,193,.05)}30%{box-shadow:0 0 0 10px rgba(111,183,193,.14)}100%{box-shadow:0 0 0 0 rgba(111,183,193,0)}}


/* === Album manager split page (v23) === */
.album-entry-panel{scroll-margin-top:110px}.album-entry-panel .muted-note{max-width:760px}.album-manager-head{align-items:flex-start}.album-manager-panel .album-upload{margin:0}.album-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 18px;padding:14px 16px;border-radius:20px;background:rgba(255,255,255,.68);border:1px solid rgba(111,183,193,.14)}.album-toolbar-left,.album-toolbar-right{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.album-selection-count{font-weight:900;color:var(--theme)}.album-manage-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.album-manage-card{position:relative;padding-top:46px}.album-check-wrap{position:absolute;left:12px;top:12px;z-index:3;display:inline-flex;gap:8px;align-items:center;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.92);border:1px solid rgba(111,183,193,.18);font-size:.9rem;font-weight:800;color:var(--ink)}.album-check-wrap input{margin:0}.album-manage-card.is-selected{box-shadow:0 0 0 3px rgba(111,183,193,.18),0 14px 32px rgba(70,98,120,.14)}.album-meta code{display:block;margin-top:2px;font-size:.74rem;color:#8a93a3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.album-preview-trigger span{min-height:42px}.album-preview-modal{position:fixed;inset:0;z-index:700;background:rgba(20,30,48,.44);backdrop-filter:blur(12px);padding:22px;display:grid;place-items:center}.album-preview-modal[hidden]{display:none!important}.album-preview-card{width:min(1100px,100%);max-height:94vh;overflow:auto;background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.84);border-radius:30px;box-shadow:0 34px 90px rgba(20,30,48,.26);padding:22px}.album-preview-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.album-preview-actions label{display:flex;gap:8px;align-items:center;font-weight:800;color:var(--ink)}.album-preview-stage{min-height:62vh;display:grid;place-items:center;padding:12px;border-radius:24px;background:linear-gradient(135deg,rgba(245,250,255,.92),rgba(255,247,248,.92));overflow:auto}.album-preview-stage img{max-width:min(100%,920px);max-height:72vh;transform-origin:center center;opacity:1;filter:none;border-radius:20px;box-shadow:0 18px 42px rgba(70,98,120,.14)}
@media(max-width:860px){.album-toolbar{align-items:flex-start}.album-toolbar-left,.album-toolbar-right{width:100%}.album-manage-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.album-preview-card{padding:16px}.album-preview-stage{min-height:46vh}}

.album-top-actions{display:grid;grid-template-columns:1.4fr 1fr;gap:12px;align-items:start}.album-fetch-form{display:grid;grid-template-columns:auto 110px auto;gap:10px;align-items:center;padding:14px 16px;border-radius:20px;background:rgba(255,255,255,.72);border:1px solid rgba(111,183,193,.14)}.album-fetch-form label{font-weight:900;color:var(--ink)}.album-assign-form{display:grid;gap:12px;margin-top:16px;padding-top:16px;border-top:1px dashed rgba(111,183,193,.22)}.album-assign-actions{display:flex;justify-content:flex-end}.album-assign-form .field{margin:0}
@media(max-width:860px){.album-top-actions{grid-template-columns:1fr}.album-fetch-form{grid-template-columns:1fr}}

/* === Private image host manager (v1) === */
.imagehost-manager-panel{max-width:1240px}.imagehost-head .muted-note{max-width:780px;line-height:1.8}.flash-box{padding:14px 16px;border-radius:18px;margin:0 0 18px;border:1px solid transparent;font-weight:800}.flash-success{background:#ecfdf3;color:#166534;border-color:#bbf7d0}.flash-error{background:#fff1f2;color:#e11d48;border-color:#fecdd3}.imagehost-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.imagehost-action-card{margin-bottom:0}.imagehost-form{grid-template-columns:1fr}.imagehost-list-section{margin-bottom:0}.imagehost-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.imagehost-card{display:flex;flex-direction:column;gap:12px;padding:14px;border-radius:24px;background:rgba(255,255,255,.78);border:1px solid rgba(111,183,193,.16);box-shadow:0 10px 28px rgba(70,98,120,.08)}.imagehost-thumb{display:block;border-radius:20px;overflow:hidden;background:linear-gradient(135deg,#eefbff,#fff5f8);border:1px solid rgba(255,255,255,.82)}.imagehost-thumb img{width:100%;height:210px;object-fit:contain;background:rgba(255,255,255,.62)}.imagehost-meta{display:grid;gap:5px;min-width:0}.imagehost-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.imagehost-meta span{font-size:.88rem;color:var(--muted)}.imagehost-url-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.imagehost-url-row .input{font-size:.86rem;padding:11px 12px}.imagehost-source{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:9px 10px;border-radius:12px;background:rgba(111,183,193,.08);color:#607086}.imagehost-card .danger{width:100%}
@media(max-width:860px){.imagehost-actions-grid{grid-template-columns:1fr}.imagehost-url-row{grid-template-columns:1fr}.imagehost-url-row .btn{width:100%}.imagehost-thumb img{height:190px}}

/* === Admin security defense panel === */
.security-panel{max-width:1240px}.security-status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}.security-stat-card{margin-bottom:0}.security-stat-card h2{font-size:1.45rem;word-break:break-all;margin:.35rem 0}.security-admin-grid{align-items:start}.security-form{grid-template-columns:1fr 1fr;margin-bottom:18px}.security-list{display:grid;gap:12px}.security-row{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:13px;border-radius:20px;background:rgba(255,255,255,.76);border:1px solid rgba(111,183,193,.16)}.security-row.is-danger{border-color:rgba(255,107,107,.38);background:rgba(255,241,242,.86)}.security-row strong{display:block;word-break:break-all}.security-row span{display:block;color:var(--muted);font-size:.9rem;line-height:1.55}.security-danger-text{color:#e11d48!important;font-weight:800}.security-row form{display:flex;justify-content:flex-end}
@media(max-width:860px){.security-status-grid,.security-form{grid-template-columns:1fr}.security-row{grid-template-columns:1fr}.security-row form{justify-content:stretch}.security-row button{width:100%}}

/* === Admin visual refresh: roomier layout + command-bar navigation === */
.site-nav.admin-nav{left:50%;right:auto;top:14px;width:min(1280px,calc(100% - 28px));transform:translateX(-50%);display:grid;grid-template-columns:minmax(210px,auto) minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 14px;border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(245,253,255,.84));border:1px solid rgba(255,255,255,.82);box-shadow:0 18px 52px rgba(60,90,120,.15);backdrop-filter:blur(18px) saturate(1.16)}.site-nav.admin-nav.is-scrolled{transform:translateX(-50%) translateY(-2px);background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(247,252,255,.9));box-shadow:0 20px 58px rgba(60,90,120,.18)}.admin-nav-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);min-width:0}.admin-nav-logo{width:42px;height:42px;border-radius:16px;display:grid;place-items:center;color:#fff;font-weight:900;background:linear-gradient(135deg,var(--theme),var(--accent));box-shadow:0 10px 22px rgba(111,183,193,.24)}.admin-nav-brand strong{display:block;line-height:1.1;font-size:1.02rem}.admin-nav-brand small{display:block;margin-top:3px;color:var(--muted);font-size:.76rem;letter-spacing:.03em}.admin-nav-links{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;overflow:auto;padding:2px;scrollbar-width:none}.admin-nav-links::-webkit-scrollbar{display:none}.admin-nav-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.admin-nav-actions form{margin:0}.admin-nav .nav-link,.admin-nav button{padding:10px 14px;min-height:40px;border-radius:15px;box-shadow:none;font-size:.94rem;white-space:nowrap}.admin-nav .nav-link.secondary{background:rgba(255,255,255,.58);border:1px solid rgba(111,183,193,.14);color:#4f6074}.admin-nav .nav-link.secondary:hover{background:rgba(111,183,193,.12);color:var(--theme);border-color:rgba(111,183,193,.24)}.admin-nav .nav-link.is-active{background:linear-gradient(135deg,var(--theme),#8bdce6);color:#fff;border:0;box-shadow:0 10px 22px rgba(111,183,193,.2)}.admin-nav .danger{padding-inline:16px}.admin-shell{padding-top:118px}.admin-panel,.editor-card{width:min(1240px,100%);border-radius:36px;background:linear-gradient(135deg,rgba(255,255,255,.93),rgba(255,255,255,.78));border:1px solid rgba(255,255,255,.86);box-shadow:0 22px 70px rgba(65,95,125,.14);padding:34px}.admin-panel>.panel-head:first-child{padding:18px 20px;border-radius:28px;background:linear-gradient(135deg,rgba(111,183,193,.11),rgba(255,154,158,.10));border:1px solid rgba(255,255,255,.7)}.admin-panel>.panel-head:first-child h1{margin:.2rem 0;font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.035em}.panel-section{background:rgba(255,255,255,.66);border-color:rgba(111,183,193,.14);box-shadow:0 10px 28px rgba(70,98,120,.06)}.panel-section:hover{border-color:rgba(111,183,193,.22)}.panel-head h2{margin:.15rem 0;font-size:1.5rem}.admin-quick-actions{padding:10px;border-radius:22px;background:rgba(255,255,255,.48);border:1px solid rgba(111,183,193,.12)}.form-grid{gap:20px}.field label{font-size:.94rem}.input,textarea,select{border-radius:16px;background:rgba(255,255,255,.86)}.table-list,.security-list{gap:14px}.row-card,.security-row,.album-card,.imagehost-card{border-color:rgba(111,183,193,.12);background:rgba(255,255,255,.74)}.row-card:hover,.security-row:hover,.album-card:hover,.imagehost-card:hover{border-color:rgba(111,183,193,.24);box-shadow:0 14px 34px rgba(70,98,120,.10)}
@media(max-width:1080px){.site-nav.admin-nav{grid-template-columns:1fr auto;align-items:start}.admin-nav-links{grid-column:1/-1;justify-content:flex-start;order:3}.admin-nav-actions{justify-content:flex-end}.admin-shell{padding-top:164px}}
@media(max-width:700px){.site-nav.admin-nav{left:10px;right:10px;top:10px;width:auto;transform:none;grid-template-columns:1fr;padding:10px;border-radius:24px}.site-nav.admin-nav.is-scrolled{transform:none}.admin-nav-brand{justify-content:flex-start}.admin-nav-links{grid-column:auto;justify-content:flex-start;width:100%;padding-bottom:3px}.admin-nav-actions{width:100%;justify-content:space-between}.admin-nav .nav-link,.admin-nav button{padding:9px 12px}.admin-shell{padding:190px 14px 54px}.admin-panel,.editor-card{padding:22px;border-radius:28px}.admin-panel>.panel-head:first-child{padding:16px;border-radius:22px}.panel-head{align-items:flex-start;flex-direction:column}.panel-head .btn,.panel-head button{width:100%}}

/* === Netdisk / visitor drive === */
.netdisk-panel{max-width:1240px}.netdisk-actions-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:20px;margin-bottom:24px}.netdisk-switch-form{display:grid;gap:14px}.netdisk-switch-card{display:flex;gap:14px;align-items:center;padding:16px;border-radius:22px;background:rgba(255,255,255,.76);border:1px solid rgba(111,183,193,.16);cursor:pointer}.netdisk-switch-card input{width:22px;height:22px}.netdisk-switch-card strong{display:block;color:var(--ink)}.netdisk-switch-card small{display:block;margin-top:4px;color:var(--muted);line-height:1.6}.netdisk-upload-form{grid-template-columns:1fr 1fr}.netdisk-list{display:grid;gap:14px}.netdisk-row{display:grid;grid-template-columns:52px 1fr auto;gap:14px;align-items:center;padding:14px;border-radius:22px;background:rgba(255,255,255,.74);border:1px solid rgba(111,183,193,.13);transition:.22s ease}.netdisk-row:hover{border-color:rgba(111,183,193,.25);box-shadow:0 14px 34px rgba(70,98,120,.1)}.netdisk-row.is-public{background:linear-gradient(135deg,rgba(236,253,243,.82),rgba(255,255,255,.78));border-color:rgba(34,197,94,.24)}.netdisk-file-icon{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(111,183,193,.16),rgba(255,154,158,.16));font-size:1.5rem}.netdisk-file-main{min-width:0}.netdisk-file-main strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.netdisk-file-main span{display:block;color:var(--muted);font-size:.9rem;margin-top:4px}.netdisk-file-main code{display:block;margin-top:6px;color:#607086;background:rgba(111,183,193,.08);border-radius:10px;padding:7px 9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.netdisk-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.netdisk-permission-toggle{padding:10px 12px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(111,183,193,.18)}.netdisk-home-entry{width:min(1060px,calc(100% - 36px));margin:34px auto 0;padding:24px 28px;border-radius:30px;background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(235,251,255,.78));border:1px solid rgba(255,255,255,.82);box-shadow:0 16px 38px rgba(80,100,140,.12);display:flex;align-items:center;justify-content:space-between;gap:18px}.netdisk-home-entry h2{font-size:2rem;margin:6px 0}.netdisk-home-entry p{color:var(--muted);line-height:1.8;margin:0}.netdisk-public-shell{width:min(1080px,calc(100% - 36px));margin:0 auto;padding:132px 0 70px}.netdisk-public-hero{padding:42px;border-radius:36px;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(238,251,255,.84));border:1px solid rgba(255,255,255,.85);box-shadow:0 22px 70px rgba(65,95,125,.14);text-align:center}.netdisk-public-hero h1{font-size:clamp(2.6rem,7vw,5rem);margin:10px 0}.netdisk-public-hero p{color:var(--muted);line-height:1.9;margin:0 auto;max-width:720px}.netdisk-public-list{display:grid;gap:16px;margin-top:24px}.netdisk-public-card{display:grid;grid-template-columns:58px 1fr auto;gap:16px;align-items:center;padding:18px;border-radius:26px;background:rgba(255,255,255,.82);border:1px solid rgba(111,183,193,.14);box-shadow:0 12px 30px rgba(70,98,120,.08)}.netdisk-public-card h2{margin:0 0 6px;font-size:1.25rem}.netdisk-public-card p{margin:0;color:var(--muted)}

/* netdisk collapsible cards: reduce visual overload, keep behavior local to netdisk/admin */
.netdisk-collapsible-panel{overflow:hidden}
.netdisk-collapsible-panel>details{display:grid;gap:0}
.netdisk-collapsible-panel>details[open]{padding-bottom:0}
.netdisk-collapse-summary{list-style:none;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;cursor:pointer;padding:18px 20px}
.netdisk-collapse-summary::-webkit-details-marker{display:none}
.netdisk-collapse-summary h2{margin:.1rem 0 0!important}
.netdisk-collapse-summary-pane{padding:0!important;align-items:center!important}
.netdisk-collapse-meta{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.netdisk-collapse-indicator{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:rgba(111,183,193,.10);color:#5e738b;font-weight:900;transition:transform .18s ease,background .18s ease}
.netdisk-collapsible-panel[open] .netdisk-collapse-indicator,.netdisk-collapsible-panel>details[open] .netdisk-collapse-indicator{transform:rotate(180deg);background:rgba(111,183,193,.16)}
.netdisk-collapse-content{padding:0 20px 20px}
.netdisk-panel-nextcloud .netdisk-collapse-content{padding-top:14px}
.netdisk-panel-nextcloud .nc-pane-card.netdisk-collapsible-panel{padding:14px}
.netdisk-panel-nextcloud .nc-pane-card.netdisk-collapsible-panel>details{gap:0}
.netdisk-panel-nextcloud .nc-pane-card.netdisk-collapsible-panel .netdisk-collapse-content{padding:12px 0 0}
.netdisk-panel-nextcloud .nc-pane-card.netdisk-collapsible-panel .nc-pane-title{margin:0}
.remote-task-panel .remote-task-summary-grid,.remote-task-panel .remote-task-note-grid{margin-top:0}
@media(max-width:860px){.netdisk-collapse-summary{padding:16px}.netdisk-collapse-content{padding:0 16px 16px}}

.netdisk-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.netdisk-style-badge{display:inline-flex;align-items:center;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(111,183,193,.16);font-weight:900;color:#4f6074}.netdisk-style-switch{display:grid;grid-template-columns:1fr 1fr;gap:10px}.netdisk-style-switch.single{grid-template-columns:1fr}.netdisk-style-switch label{position:relative;display:flex;align-items:center;justify-content:center;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.72);border:1px solid rgba(111,183,193,.16);cursor:pointer;font-weight:900;color:#4f6074;transition:.2s ease}.netdisk-style-switch label:hover{border-color:rgba(111,183,193,.28);transform:translateY(-1px)}.netdisk-style-switch input{position:absolute;opacity:0;pointer-events:none}.netdisk-style-switch label.is-selected,.netdisk-style-switch label:has(input:checked){background:linear-gradient(135deg,rgba(111,183,193,.16),rgba(255,154,158,.16));border-color:rgba(111,183,193,.32);color:var(--theme);box-shadow:0 10px 24px rgba(70,98,120,.08)}.netdisk-switch-card.compact{padding:14px 15px;border-radius:18px}.netdisk-panel-nextcloud{padding:22px;background:#eef2f6}.nc-shell{border-radius:28px;overflow:hidden;background:#fff;border:1px solid #d9e0e8;box-shadow:0 22px 60px rgba(54,79,109,.12)}.nc-appbar{display:grid;grid-template-columns:auto minmax(220px,420px) auto;align-items:center;gap:18px;padding:0 18px;height:56px;background:#0b5ed7;color:#fff}.nc-appbar-left{display:flex;align-items:center;gap:10px;min-width:0}.nc-app-launcher,.nc-cloud-mark{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.16)}.nc-cloud-mark{background:rgba(255,255,255,.22)}.nc-appbar-left strong{font-size:1rem;letter-spacing:.02em}.nc-app-sep{opacity:.72}.nc-breadcrumb{opacity:.92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nc-appbar-search{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:8px;background:rgba(255,255,255,.14);min-width:0}.nc-appbar-search span{opacity:.82}.nc-appbar-search input{width:100%;background:transparent;border:0;outline:none;color:#fff;font:inherit}.nc-appbar-search input::placeholder{color:rgba(255,255,255,.78)}.nc-appbar-right{display:flex;align-items:center;justify-content:flex-end;gap:10px}.nc-app-chip{display:inline-flex;gap:6px;align-items:center;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.14);font-size:.9rem}.nc-app-chip b{color:#fff}.nc-workspace{display:grid;grid-template-columns:250px minmax(0,1fr) 300px;min-height:720px;background:#f5f7fa}.nc-navpane{padding:18px;background:#f1f4f8;border-right:1px solid #dde4ec;display:grid;align-content:start;gap:16px}.nc-pane-card{padding:16px;border-radius:16px;background:#fff;border:1px solid #dfe5ec;box-shadow:0 1px 0 rgba(255,255,255,.8)}.nc-pane-title{margin-bottom:12px;font-size:.84rem;font-weight:900;letter-spacing:.06em;color:#6c7a89;text-transform:uppercase}.nc-new-form{display:grid;gap:10px}.nc-primary-btn{background:#0b5ed7!important;color:#fff!important;box-shadow:none!important;border-radius:8px!important}.nc-filter-nav{display:grid;gap:4px}.nc-filter-nav button{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;align-items:center;justify-content:flex-start;padding:10px 12px;border-radius:8px;background:transparent;color:#243242;box-shadow:none;border:1px solid transparent}.nc-filter-nav button:hover{background:#eef4ff;border-color:#d2e2ff;color:#0b5ed7}.nc-filter-nav button.is-active{background:#dce9ff;border-color:#c0d6ff;color:#0b5ed7}.nc-filter-nav em{font-style:normal;color:#6f7d8a}.nc-filter-icon{display:grid;place-items:center}.nc-settings-pane .netdisk-switch-card{background:#f7f9fc}.nc-filepane{display:grid;grid-template-rows:auto 1fr;padding:0;background:#fff}.nc-toolbar-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid #e4eaf1;background:#fff}.nc-toolbar-left,.nc-toolbar-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.nc-select-all{display:flex;align-items:center;gap:10px;font-weight:800;color:#243242}.nc-bulk-actions{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:999px;background:#eef4ff;color:#0b5ed7}.nc-current-filter{padding:7px 10px;border-radius:999px;background:#f3f6fa;color:#627283;font-weight:800}.nc-table-wrap{display:grid;grid-template-rows:auto 1fr;min-height:0}.nc-table-head{display:grid;grid-template-columns:56px minmax(280px,1.6fr) 180px 120px 120px 140px;gap:0;align-items:center;padding:0 18px;height:44px;background:#f8fafc;border-bottom:1px solid #e6edf5;color:#6d7b8a;font-size:.83rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.nc-table-body{overflow:auto}.nc-entry{display:grid;grid-template-columns:56px minmax(280px,1.6fr) 180px 120px 120px 140px;gap:0;align-items:center;padding:0 18px;min-height:58px;border-bottom:1px solid #eef2f6;background:#fff;transition:background .15s ease,border-color .15s ease}.nc-entry:hover{background:#f8fbff}.nc-entry.is-selected{background:#eef5ff;box-shadow:inset 3px 0 0 #0b5ed7}.nc-entry[hidden]{display:none!important}.nc-cell{min-width:0}.nc-check{display:flex;align-items:center}.nc-check input{width:18px;height:18px}.nc-name-cell{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:center;padding:0;border:0;background:transparent;color:inherit;text-align:left;box-shadow:none;border-radius:0}.nc-file-glyph{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#e8f0ff;color:#0b5ed7;font-size:1.1rem}.nc-file-meta{display:grid;min-width:0}.nc-file-meta strong,.nc-file-meta small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nc-file-meta strong{color:#1f2d3d;font-size:.96rem}.nc-file-meta small{color:#738396;font-size:.85rem;margin-top:3px}.nc-time,.nc-size,.nc-share-cell{color:#5f7185;font-size:.92rem}.nc-share-badge{display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;border-radius:999px;font-size:.82rem;font-weight:800}.nc-share-badge.public{background:#dceeff;color:#0b5ed7}.nc-share-badge.private{background:#edf1f5;color:#617182}.nc-row-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px}.nc-icon-btn{width:34px;height:34px;padding:0;border-radius:8px;display:grid;place-items:center;background:#f3f6fa;color:#3c4d5f;text-decoration:none;border:1px solid #dfe5ec;box-shadow:none}.nc-icon-btn:hover{background:#e9f1ff;color:#0b5ed7;border-color:#c8daf8}.nc-icon-btn.danger-lite{color:#c62828;background:#fff4f4;border-color:#f3d0d0}.nc-icon-btn.danger-lite:hover{background:#ffeaea;border-color:#f0bbbb}.nc-detailpane{padding:18px;background:#fbfcfd;border-left:1px solid #dde4ec;display:grid;align-content:start;gap:16px}.nc-detail-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:center;padding:18px;border-radius:16px;background:#fff;border:1px solid #dfe5ec}.nc-detail-icon{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;background:#e8f0ff;color:#0b5ed7;font-size:2rem}.nc-detail-title strong,.nc-detail-title span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nc-detail-title strong{font-size:1.02rem;color:#1f2d3d}.nc-detail-title span{margin-top:4px;color:#728293;font-size:.9rem}.nc-detail-section{padding:16px;border-radius:16px;background:#fff;border:1px solid #dfe5ec}.nc-detail-section h3{margin:0 0 14px;font-size:.95rem}.nc-detail-meta{display:grid;gap:12px;margin:0}.nc-detail-meta div{display:grid;gap:4px}.nc-detail-meta dt{font-size:.78rem;font-weight:900;color:#7a8796;text-transform:uppercase;letter-spacing:.04em}.nc-detail-meta dd{margin:0;color:#243242;font-weight:700}.nc-detail-linkbox .input{font-size:.9rem}.nc-detail-actions{display:grid;gap:10px}.nc-detail-form{margin:0}.nc-file-row.is-copy-success,.nc-entry.is-copy-success{box-shadow:inset 3px 0 0 #16a34a;background:#f0fdf4}.nc-table-body .empty{margin:16px}.netdisk-panel-nextcloud .inline-switch{padding:10px 12px;border-radius:10px;background:#f5f7fa}
@media(max-width:1320px){.nc-workspace{grid-template-columns:230px minmax(0,1fr) 280px}.nc-table-head,.nc-entry{grid-template-columns:52px minmax(220px,1.5fr) 150px 100px 110px 120px}}
@media(max-width:1120px){.nc-appbar{grid-template-columns:1fr;gap:10px;height:auto;padding:14px}.nc-workspace{grid-template-columns:1fr}.nc-navpane,.nc-detailpane{border:0}.nc-navpane{border-bottom:1px solid #dde4ec}.nc-detailpane{border-top:1px solid #dde4ec}.nc-table-head{display:none}.nc-entry{grid-template-columns:48px minmax(0,1fr) auto;grid-template-areas:'check name actions' '. time time' '. size share';row-gap:8px;padding:14px 18px;align-items:start}.nc-check{grid-area:check}.nc-name-cell{grid-area:name}.nc-row-actions{grid-area:actions}.nc-time{grid-area:time}.nc-size{grid-area:size}.nc-share-cell{grid-area:share}.nc-time:before,.nc-size:before,.nc-share-cell:before{display:inline-block;margin-right:8px;font-size:.78rem;font-weight:900;color:#7a8796;text-transform:uppercase;letter-spacing:.04em}.nc-time:before{content:'Time'}.nc-size:before{content:'Size'}.nc-share-cell:before{content:'Share'}}

/* === Sakura original-like header nav (v24) === */
.sakura-home .site-header.sakura-nav{position:fixed;top:0;left:0;right:0;width:100%;transform:none!important;padding:0 20px;height:75px;display:block;z-index:999;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.sakura-home .site-header.sakura-nav.is-scrolled{background:rgba(255,255,255,.95)!important;box-shadow:0 1px 40px -8px rgba(0,0,0,.22)!important}.sakura-home .site-header.sakura-nav .site-top{max-width:1200px;height:75px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 10px}.sakura-home .site-header.sakura-nav .site-branding{animation:sitetop 1s}.sakura-home .site-header.sakura-nav .site-title{display:block;margin:0}.sakura-home .site-header.sakura-nav .logolink{font-family:'Noto Serif SC',serif;font-size:26px;line-height:1.2}.sakura-home .site-header.sakura-nav .site-name{color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.3);transition:color .3s ease}.sakura-home .site-header.sakura-nav.is-scrolled .site-name{color:#464646;text-shadow:none}.sakura-home .site-header.sakura-nav .lower{animation:searchbox 1s}.sakura-home .sakura-main-nav{display:flex;align-items:center;gap:26px}.sakura-home .sakura-main-nav a{font-size:14px;color:#fff;position:relative;line-height:75px;padding:0 2px;text-decoration:none;text-shadow:0 1px 8px rgba(0,0,0,.28);transition:color .3s ease}.sakura-home .site-header.sakura-nav.is-scrolled .sakura-main-nav a{color:#666;text-shadow:none}.sakura-home .sakura-main-nav a:hover{color:orange!important}.sakura-home .sakura-main-nav a:after{content:'';position:absolute;left:0;right:0;bottom:20px;height:6px;border-bottom:1px solid orange;border-radius:999px;transform:scaleX(0);transform-origin:center;transition:transform .3s ease,opacity .3s ease;opacity:0}.sakura-home .sakura-main-nav a:hover:after{transform:scaleX(1);opacity:1}.sakura-home .site-header.sakura-nav .brand,.sakura-home .site-header.sakura-nav .nav-link{display:none!important}
@media(max-width:860px){.sakura-home .site-header.sakura-nav{padding:0 10px;height:64px}.sakura-home .site-header.sakura-nav .site-top{height:64px;padding:0 4px;overflow:auto}.sakura-home .site-header.sakura-nav .logolink{font-size:20px;white-space:nowrap}.sakura-home .sakura-main-nav{gap:16px;padding-left:16px;white-space:nowrap}.sakura-home .sakura-main-nav a{line-height:64px;font-size:13px}.sakura-home .sakura-main-nav a:after{bottom:16px}}


/* === Full Sakura homepage architecture override (v25) === */
.sakura-home #main-container.sakura-main-container{display:block;min-height:100vh;background:#fff}.sakura-home #page.site.wrapper{position:relative;background:#fff}.sakura-home .headertop.sakura-cover{height:550px;margin:0!important;background-position:center top;background-size:cover;background-repeat:no-repeat;background-attachment:fixed;display:grid;place-items:center}.sakura-home .headertop.sakura-cover:before{content:"";display:block!important;visibility:visible!important;opacity:.46!important;position:absolute;inset:0;z-index:1;background-image:linear-gradient(rgba(255,255,255,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.11) 1px,transparent 1px);background-size:18px 18px;mix-blend-mode:soft-light}.sakura-home .headertop .sakura-cover-overlay{display:block!important;position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.04) 45%,rgba(255,255,255,.24))}.sakura-home .headertop .focusinfo{z-index:3}.sakura-home .cover-scroll{display:grid!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;position:absolute;left:50%;bottom:38px;z-index:5;width:42px;height:42px;border-radius:50%;place-items:center;color:#fff;text-decoration:none;font-size:30px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.45);animation:sakuraBounce 1.8s ease-in-out infinite}.sakura-home .site-header.site-nav.sakura-nav{top:0!important;left:0!important;right:0!important;width:100%!important;height:75px!important;padding:0 20px!important;border-radius:0!important;display:block!important;background:transparent!important}.sakura-home .site-header.site-nav.sakura-nav.is-scrolled{background:rgba(255,255,255,.95)!important;box-shadow:0 1px 40px -8px rgba(0,0,0,.22)!important}.sakura-home .site-header.site-nav.sakura-nav .site-top{max-width:1200px!important;height:75px!important;margin:0 auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important}.sakura-home .site-content.sakura-content{padding-top:52px!important;margin-top:0!important;background:#fff!important}.sakura-home .notice.sakura-notice{margin-top:0!important}.sakura-home .top-feature{max-width:860px;margin:0 auto;padding:0 10px}.sakura-home .top-feature .main-title,.sakura-home #primary .main-title{font-family:'Ubuntu','Noto Serif SC',system-ui,sans-serif;font-weight:400}.sakura-home .sakura-feature-functional .sakura-feature-card{min-height:260px}.sakura-home .sakura-feature-card-text .feature-copy.full{height:100%;display:flex;flex-direction:column;gap:12px}.sakura-home #primary.content-area{max-width:860px;margin:0 auto;padding:0 10px}.sakura-home .sakura-footer{background:#fff;margin-top:80px}.sakura-home .site-nav:not(.admin-nav).sakura-nav .nav-link,.sakura-home .site-nav:not(.admin-nav).sakura-nav .brand{display:none!important}
@media(max-width:860px){.sakura-home .headertop.sakura-cover{height:390px;background-attachment:scroll}.sakura-home .site-header.site-nav.sakura-nav{height:64px!important;padding:0 10px!important}.sakura-home .site-header.site-nav.sakura-nav .site-top{height:64px!important;overflow:auto}.sakura-home .cover-scroll{bottom:22px;width:36px;height:36px;font-size:25px}.sakura-home .site-content.sakura-content{padding-top:36px!important}.sakura-home .top-feature,.sakura-home #primary.content-area{width:calc(100% - 28px);padding:0}.sakura-home .sakura-feature-functional{grid-template-columns:1fr!important}}

/* === Sakura article list card ratio/layout pass (v31) ===
   Match mashirozx/Sakura post-list-thumb rhythm: 300px card height,
   text block about 40%, cover image about 55%, cover on the right by default. */
.sakura-home .sakura-post-list{display:block!important}
.sakura-home .post-list-thumb{
  display:block!important;
  height:300px!important;
  margin:20px 0!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:10px!important;
  background-color:rgba(255,255,255,0)!important;
  box-shadow:0 1px 20px -8px rgba(0,0,0,.5)!important;
}
.sakura-home .post-list-thumb:hover{box-shadow:0 1px 24px -7px rgba(0,0,0,.58)!important;transform:translateY(-3px)}
.sakura-home .post-list-thumb .post-thumb{
  float:right!important;
  width:55%!important;
  height:300px!important;
}
.sakura-home .post-list-thumb .post-thumb a{
  height:300px!important;
  display:block!important;
  overflow:hidden!important;
  border-radius:0 10px 10px 0!important;
}
.sakura-home .post-list-thumb .post-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  transition:transform .6s ease!important;
}
.sakura-home .post-list-thumb:hover .post-thumb img{transform:scale(1.1)!important}
.sakura-home .post-list-thumb .post-content-wrap{
  float:right!important;
  display:inline-block!important;
  width:40%!important;
  height:auto!important;
  margin:20px 10px 0 10px!important;
  padding:0 30px 0 0!important;
  text-align:left!important;
}
.sakura-home .post-list-thumb-left .post-thumb,
.sakura-home .post-list-thumb-left .post-content-wrap{float:right!important}
.sakura-home .post-list-thumb-left .post-thumb a{border-radius:0 10px 10px 0!important}
.sakura-home .post-list-thumb .post-title h3{
  font-size:1.28rem;
  line-height:1.45;
  margin:11px 0 8px;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  word-wrap:break-word;
}
.sakura-home .post-list-thumb .float-content{
  position:relative;
  width:100%;
  right:0;
  margin:0;
  padding:0;
  z-index:50;
  color:rgba(0,0,0,.66);
}
.sakura-home .post-list-thumb .float-content p{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  height:67.5px;
  overflow:hidden;
  margin:13px 0 10px;
  font-size:14px;
  line-height:1.6;
  text-align:justify;
}
.sakura-home .post-list-thumb .tags{margin:10px 0 8px;max-height:30px;overflow:hidden}
.sakura-home .post-list-thumb .post-bottom{text-align:right;margin-top:4px}
@media(max-width:768px){
  .sakura-home .sakura-post-list{display:grid!important;gap:10px}
  .sakura-home .post-list-thumb,
  .sakura-home .post-list-thumb-left{height:auto!important;margin:10px 0!important;border:0!important;box-shadow:none!important;overflow:visible!important;background:transparent!important}
  .sakura-home .post-list-thumb .post-thumb,
  .sakura-home .post-list-thumb .post-content-wrap{float:none!important;width:100%!important;left:0!important}
  .sakura-home .post-list-thumb .post-thumb{height:210px!important}
  .sakura-home .post-list-thumb .post-thumb a,
  .sakura-home .post-list-thumb-left .post-thumb a{height:210px!important;border-radius:10px!important}
  .sakura-home .post-list-thumb .post-content-wrap{margin:0!important;padding:20px!important;box-shadow:none;border-top:0}
  .sakura-home .post-list-thumb .float-content p{height:auto!important;display:block!important;font-size:13px;margin-bottom:1em}
  .sakura-home .post-list-thumb .post-bottom{display:none}
}


/* === Article media and attachment support === */
.post-media-upload-box{padding:18px;border-radius:22px;background:rgba(255,255,255,.62);border:1px dashed rgba(111,183,193,.28);gap:10px}.post-media-upload-box small{color:var(--muted)}.post-media-manager{padding:20px;border-radius:26px;background:rgba(255,255,255,.72);border:1px solid rgba(111,183,193,.14);gap:14px}.post-media-manager-title{font-weight:900;color:#405065;margin-top:8px}.post-media-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.post-media-admin-list{display:grid;gap:12px}.post-media-admin-card{display:grid;grid-template-columns:78px 1fr auto;gap:12px;align-items:center;padding:12px;border-radius:18px;background:#fff;border:1px solid rgba(0,0,0,.05)}.post-media-admin-card img{width:78px;height:58px;border-radius:14px;object-fit:cover}.post-media-admin-card strong,.post-media-admin-card small{display:block}.post-media-admin-card small{color:var(--muted);font-size:.86rem;margin-top:4px}.post-media-admin-card form{margin:0}.post-media-admin-card.attachment{grid-template-columns:42px 1fr auto auto}.post-attachment-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:rgba(111,183,193,.12);font-size:1.25rem}.article-media-section{margin-top:46px}.article-media-section h2{margin:0 0 18px;font-size:1.6rem}.article-image-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.article-image-grid figure{margin:0;padding:10px;border-radius:22px;background:rgba(255,255,255,.72);box-shadow:0 10px 24px rgba(70,98,120,.08)}.article-image-grid img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:16px}.article-image-grid figcaption{padding:10px 4px 2px;color:var(--muted);font-size:.92rem}.article-attachment-list{display:grid;gap:12px}.article-attachment-card{display:grid;grid-template-columns:46px 1fr auto;gap:14px;align-items:center;padding:16px;border-radius:20px;background:linear-gradient(135deg,rgba(255,255,255,.84),rgba(235,251,255,.72));border:1px solid rgba(111,183,193,.14);text-decoration:none;color:var(--ink);box-shadow:0 10px 24px rgba(70,98,120,.08);transition:.2s ease}.article-attachment-card:hover{transform:translateY(-2px);border-color:rgba(111,183,193,.32)}.article-attachment-card strong,.article-attachment-card small{display:block}.article-attachment-card small{color:var(--muted);font-size:.9rem;margin-top:3px}.article-attachment-card em{font-style:normal;color:var(--theme);font-weight:900}@media(max-width:760px){.article-image-grid{grid-template-columns:1fr}.post-media-admin-card,.post-media-admin-card.attachment{grid-template-columns:1fr}.post-media-admin-card img{width:100%;height:160px}.article-attachment-card{grid-template-columns:42px 1fr}}

/* === Whitelist entrance notice (v21) === */
.whitelist-entrance-toast{position:fixed;right:24px;top:92px;z-index:2147483200;display:flex;align-items:center;gap:14px;max-width:min(380px,calc(100vw - 32px));padding:16px 18px;border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(255,247,250,.88));border:1px solid rgba(255,255,255,.88);box-shadow:0 22px 64px rgba(58,91,120,.22),0 0 0 1px rgba(111,183,193,.10);backdrop-filter:blur(18px) saturate(1.16);-webkit-backdrop-filter:blur(18px) saturate(1.16);color:var(--ink);animation:whitelistToastIn .72s cubic-bezier(.16,1,.3,1) both;overflow:hidden}.whitelist-entrance-toast:before{content:"";position:absolute;inset:0 auto 0 -38%;width:32%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);transform:skewX(-16deg);animation:whitelistToastShine 2.6s ease .2s both}.whitelist-entrance-toast strong{display:block;font-size:1rem;letter-spacing:.02em}.whitelist-entrance-toast small{display:block;margin-top:3px;color:var(--muted);line-height:1.5}.whitelist-entrance-icon{width:42px;height:42px;flex:0 0 auto;border-radius:16px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--theme),var(--accent));box-shadow:0 10px 24px rgba(255,154,158,.24);font-size:21px;animation:whitelistIconPulse 1.8s ease-in-out infinite}.whitelist-entrance-toast.is-leaving{animation:whitelistToastOut .55s ease both}.whitelist-entrance-sparkles{position:fixed;inset:0;z-index:2147483199;pointer-events:none;overflow:hidden}.whitelist-entrance-sparkles span{position:absolute;color:var(--accent);font-size:18px;text-shadow:0 0 16px rgba(255,255,255,.96);animation:whitelistSparkle 1.7s cubic-bezier(.16,1,.3,1) forwards;opacity:0}.whitelist-entrance-sparkles span:nth-child(2n){color:var(--theme)}.whitelist-entrance-sparkles span:nth-child(3n){color:#ffd166}@keyframes whitelistToastIn{from{opacity:0;transform:translate3d(18px,-14px,0) scale(.96)}to{opacity:1;transform:none}}@keyframes whitelistToastOut{to{opacity:0;transform:translate3d(18px,-10px,0) scale(.98)}}@keyframes whitelistToastShine{0%{transform:translateX(0) skewX(-16deg);opacity:0}25%{opacity:1}100%{transform:translateX(520%) skewX(-16deg);opacity:0}}@keyframes whitelistIconPulse{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.08) rotate(8deg)}}@keyframes whitelistSparkle{0%{opacity:0;transform:translate3d(0,12px,0) scale(.65) rotate(0)}18%{opacity:1}100%{opacity:0;transform:translate3d(var(--dx),var(--dy),0) scale(.18) rotate(180deg)}}@media(max-width:640px){.whitelist-entrance-toast{left:16px;right:16px;top:76px;max-width:none}}@media(prefers-reduced-motion:reduce){.whitelist-entrance-toast,.whitelist-entrance-toast.is-leaving,.whitelist-entrance-icon,.whitelist-entrance-sparkles span,.whitelist-entrance-toast:before{animation:none!important}.whitelist-entrance-sparkles{display:none}.whitelist-entrance-toast.is-leaving{opacity:0}}

/* Album preview: wheel-to-zoom viewer */
.album-preview-stage{cursor:zoom-in;overscroll-behavior:contain}.album-preview-stage img{transform-origin:center center;will-change:transform;transition:transform .08s linear}.album-preview-actions .muted-note{font-size:.92rem}

/* === Admin Panel Theme: astro-koharu adaptation (v1) ===
   Switchable via site_config.admin_panel_theme. Classic admin CSS remains the fallback. */
body.admin-panel-theme-koharu{
  --koharu-bg:#f8fafc;--koharu-card:rgba(255,255,255,.86);--koharu-border:rgba(15,23,42,.08);--koharu-text:#293241;--koharu-muted:#748094;--koharu-primary:#8fb8ff;--koharu-secondary:#f6a7c5;--koharu-green:#a7d8c3;--koharu-shadow:0 18px 48px rgba(35,48,74,.10);--koharu-shadow-darker:0 24px 68px rgba(35,48,74,.16);
  color:var(--koharu-text);background:radial-gradient(circle at 12% 8%,rgba(143,184,255,.18),transparent 28%),radial-gradient(circle at 88% 6%,rgba(246,167,197,.18),transparent 26%),linear-gradient(180deg,#fbfdff 0%,#f7f8fc 44%,#fff9fb 100%)!important;
}
body.admin-panel-theme-koharu:before{content:"";position:fixed;inset:0;z-index:-3;background:linear-gradient(135deg,rgba(255,255,255,.55),transparent 42%),radial-gradient(circle at 50% 0%,rgba(167,216,195,.16),transparent 45%);opacity:1!important}
body.admin-panel-theme-koharu:after{content:"";position:fixed;left:0;right:0;top:0;height:260px;z-index:-2;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(255,255,255,0))}
body.admin-panel-theme-koharu .site-nav.admin-nav{top:16px;width:min(1180px,calc(100% - 32px));justify-content:space-between;border:1px solid rgba(255,255,255,.78)!important;background:rgba(255,255,255,.76)!important;box-shadow:var(--koharu-shadow)!important;backdrop-filter:blur(18px) saturate(1.18);-webkit-backdrop-filter:blur(18px) saturate(1.18)}
body.admin-panel-theme-koharu .admin-nav-brand{color:var(--koharu-text)!important;text-decoration:none;gap:10px}body.admin-panel-theme-koharu .admin-nav-brand strong{color:var(--koharu-text)!important;letter-spacing:.02em}body.admin-panel-theme-koharu .admin-nav-brand small,body.admin-panel-theme-koharu .muted-note,body.admin-panel-theme-koharu .field small,body.admin-panel-theme-koharu .meta,body.admin-panel-theme-koharu .album-meta span{color:var(--koharu-muted)!important}
body.admin-panel-theme-koharu .admin-nav-logo{background:linear-gradient(135deg,var(--koharu-primary),var(--koharu-secondary))!important;color:#fff!important;border-radius:16px!important;box-shadow:0 10px 24px rgba(143,184,255,.28)!important}
body.admin-panel-theme-koharu .admin-nav .nav-link,body.admin-panel-theme-koharu .admin-nav .btn,body.admin-panel-theme-koharu .admin-nav button,body.admin-panel-theme-koharu .admin-theme-toggle{box-shadow:none!important}body.admin-panel-theme-koharu .admin-nav .nav-link.is-active,body.admin-panel-theme-koharu .admin-theme-toggle.is-active{background:linear-gradient(135deg,var(--koharu-primary),var(--koharu-secondary))!important;color:#fff!important;border:0!important}body.admin-panel-theme-koharu .admin-nav .nav-link.secondary,body.admin-panel-theme-koharu .admin-nav .btn.secondary,body.admin-panel-theme-koharu .admin-theme-toggle:not(.is-active){background:rgba(255,255,255,.58)!important;color:#536074!important;border:1px solid rgba(83,96,116,.10)!important}
body.admin-panel-theme-koharu .admin-shell{padding-top:118px}body.admin-panel-theme-koharu .admin-panel,body.admin-panel-theme-koharu .editor-card,body.admin-panel-theme-koharu .login-card,body.admin-panel-theme-koharu .admin-config-hero-panel,body.admin-panel-theme-koharu .admin-config-card{background:var(--koharu-card)!important;border:1px solid rgba(255,255,255,.82)!important;border-radius:32px!important;box-shadow:var(--koharu-shadow)!important;backdrop-filter:blur(18px) saturate(1.12);-webkit-backdrop-filter:blur(18px) saturate(1.12)}
body.admin-panel-theme-koharu .admin-panel>.panel-head:first-child{position:relative;overflow:hidden;padding:28px;border-radius:28px;background:linear-gradient(135deg,rgba(143,184,255,.24),rgba(246,167,197,.18)),rgba(255,255,255,.72)!important;border:1px solid rgba(255,255,255,.72)!important}body.admin-panel-theme-koharu .admin-panel>.panel-head:first-child:before{content:"";position:absolute;inset:auto -8% -55% 42%;height:160px;border-radius:999px;background:radial-gradient(circle,rgba(255,255,255,.70),transparent 68%);pointer-events:none}
body.admin-panel-theme-koharu .panel-section,body.admin-panel-theme-koharu .row-card,body.admin-panel-theme-koharu .album-card,body.admin-panel-theme-koharu .imagehost-card,body.admin-panel-theme-koharu .security-row,body.admin-panel-theme-koharu .netdisk-switch-card,body.admin-panel-theme-koharu .inline-switch,body.admin-panel-theme-koharu .admin-quick-actions,body.admin-panel-theme-koharu .admin-config-status-card{background:rgba(255,255,255,.72)!important;border:1px solid var(--koharu-border)!important;border-radius:24px!important;box-shadow:0 10px 30px rgba(35,48,74,.07)!important}
body.admin-panel-theme-koharu .panel-section:hover,body.admin-panel-theme-koharu .row-card:hover,body.admin-panel-theme-koharu .album-card:hover,body.admin-panel-theme-koharu .imagehost-card:hover,body.admin-panel-theme-koharu .security-row:hover{transform:translateY(-3px);box-shadow:var(--koharu-shadow-darker)!important;border-color:rgba(143,184,255,.28)!important}
body.admin-panel-theme-koharu h1,body.admin-panel-theme-koharu h2,body.admin-panel-theme-koharu h3,body.admin-panel-theme-koharu strong,body.admin-panel-theme-koharu .field label{color:var(--koharu-text)!important}body.admin-panel-theme-koharu .kicker{color:#7199df!important;letter-spacing:.16em;text-transform:uppercase}
body.admin-panel-theme-koharu .btn,body.admin-panel-theme-koharu button:not(.danger){background:linear-gradient(135deg,var(--koharu-primary),var(--koharu-secondary))!important;color:#fff!important;border:0!important;box-shadow:0 12px 28px rgba(143,184,255,.22)!important}body.admin-panel-theme-koharu .btn.secondary,body.admin-panel-theme-koharu button.btn.secondary{background:rgba(255,255,255,.72)!important;color:#6681a9!important;border:1px solid rgba(143,184,255,.22)!important;box-shadow:none!important}body.admin-panel-theme-koharu .danger{background:linear-gradient(135deg,#ff7b91,#ffb199)!important;color:#fff!important}
body.admin-panel-theme-koharu .input,body.admin-panel-theme-koharu textarea,body.admin-panel-theme-koharu select{background:rgba(255,255,255,.82)!important;border:1px solid rgba(83,96,116,.12)!important;border-radius:18px!important;color:var(--koharu-text)!important;box-shadow:inset 0 1px rgba(255,255,255,.6)!important}body.admin-panel-theme-koharu .input:focus,body.admin-panel-theme-koharu textarea:focus,body.admin-panel-theme-koharu select:focus{transform:none!important;border-color:rgba(143,184,255,.62)!important;box-shadow:0 0 0 5px rgba(143,184,255,.16)!important}
body.admin-panel-theme-koharu .preview-img,body.admin-panel-theme-koharu .row-card img,body.admin-panel-theme-koharu .album-card img,body.admin-panel-theme-koharu .imagehost-card img{opacity:1;filter:none;border-radius:18px!important;border:1px solid rgba(255,255,255,.82)!important;box-shadow:0 12px 26px rgba(35,48,74,.10)!important}
body.admin-panel-theme-koharu .admin-config-card-head>span,body.admin-panel-theme-koharu .badge,body.admin-panel-theme-koharu .tag{background:linear-gradient(135deg,rgba(143,184,255,.18),rgba(246,167,197,.16))!important;color:#6681a9!important;border:1px solid rgba(143,184,255,.18)!important}body.admin-panel-theme-koharu .netdisk-style-switch label,body.admin-panel-theme-koharu .admin-config-switch label{background:rgba(255,255,255,.62)!important;border:1px solid rgba(83,96,116,.10)!important;color:#637087!important}body.admin-panel-theme-koharu .netdisk-style-switch label.is-selected,body.admin-panel-theme-koharu .admin-config-switch label.is-selected{background:linear-gradient(135deg,rgba(143,184,255,.96),rgba(246,167,197,.92))!important;border-color:transparent!important;color:#fff!important;box-shadow:0 12px 28px rgba(143,184,255,.22)!important}
body.admin-panel-theme-koharu .table-list{gap:14px}body.admin-panel-theme-koharu .row-card{grid-template-columns:82px minmax(0,1fr) auto;padding:14px}body.admin-panel-theme-koharu .empty,body.admin-panel-theme-koharu .error-box{background:rgba(255,255,255,.72)!important;border:1px dashed rgba(143,184,255,.28)!important;color:var(--koharu-muted)!important}
body.admin-panel-theme-koharu .post-editor-card,body.admin-panel-theme-koharu .post-editor-head,body.admin-panel-theme-koharu .post-editor-layout-classic .field,body.admin-panel-theme-koharu .post-editor-style-switch{background:rgba(255,255,255,.72)!important;border-color:var(--koharu-border)!important;box-shadow:0 10px 30px rgba(35,48,74,.07)!important}body.admin-panel-theme-koharu .post-editor-style-switch .is-selected{background:linear-gradient(135deg,var(--koharu-primary),var(--koharu-secondary))!important;color:#fff!important}
@media(max-width:900px){body.admin-panel-theme-koharu .site-nav.admin-nav{left:12px;right:12px;width:auto;transform:none;overflow:auto;justify-content:flex-start}body.admin-panel-theme-koharu .admin-shell{padding-top:104px}body.admin-panel-theme-koharu .row-card{grid-template-columns:64px minmax(0,1fr)}}

/* === astro-koharu homepage integration overrides (restored after admin rollback v7) === */
body.astro-koharu-verbatim-home{background:#f8fafc;color:#1f2937;min-height:100vh}body.astro-koharu-verbatim-home .astro-koharu-main{position:relative;z-index:1}body.astro-koharu-verbatim-home .shadow-box{box-shadow:0 18px 48px rgba(31,41,55,.10)}body.astro-koharu-verbatim-home .shadow-card{box-shadow:0 12px 32px rgba(31,41,55,.10)}body.astro-koharu-verbatim-home .hover\:shadow-card-darker:hover{box-shadow:0 18px 46px rgba(31,41,55,.16)}body.astro-koharu-verbatim-home .bg-gradient-start{background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(245,248,255,.86))}body.astro-koharu-verbatim-home .post-item-card img{opacity:1;filter:none}body.astro-koharu-verbatim-home .post-item-card a{text-decoration:none;color:inherit}.page-home-sider .sider-content{background:rgba(255,255,255,.78);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
html:has(body.astro-koharu-verbatim-home),body.astro-koharu-verbatim-home{min-height:100%;overflow-x:hidden!important}html:has(body.astro-koharu-verbatim-home){height:auto!important;min-height:100%!important;overflow-y:scroll!important}body.astro-koharu-verbatim-home{height:auto!important;min-height:100vh!important;max-height:none!important;overflow-y:visible!important}.astro-koharu-verbatim-home .astro-koharu-main,.astro-koharu-verbatim-home .page-home-sider,.astro-koharu-verbatim-home .sider-content,.astro-koharu-verbatim-home .post-list,.astro-koharu-verbatim-home .post-item-card{height:auto!important;max-height:none!important;overflow:visible!important}.astro-koharu-verbatim-home .page-home-sider{position:relative!important}.astro-koharu-verbatim-home .sider-content{position:sticky;top:92px}@media(max-width:980px){.astro-koharu-verbatim-home .sider-content{position:relative;top:auto}}
.astro-koharu-verbatim-home #site-header{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:1000;width:min(1120px,calc(100% - 32px));display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.74);border:1px solid rgba(255,255,255,.82);box-shadow:0 12px 36px rgba(15,23,42,.12);backdrop-filter:blur(18px) saturate(1.16);-webkit-backdrop-filter:blur(18px) saturate(1.16)}.koharu-header-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:#273244;font-weight:900}.koharu-header-logo-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:14px;background:linear-gradient(135deg,#8fb8ff,#f6a7c5);color:#fff}.koharu-header-nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.koharu-header-nav a{position:relative;padding:9px 12px;border-radius:999px;text-decoration:none;color:#506073;font-weight:800;background:transparent;box-shadow:none;overflow:visible}.koharu-header-nav a:hover{background:rgba(143,184,255,.13);color:#2f4f86;transform:none;box-shadow:none}.koharu-admin-pill{display:inline-flex;padding:8px 12px;border-radius:999px;background:linear-gradient(135deg,#8fb8ff,#f6a7c5)!important;color:#fff!important;text-decoration:none;font-weight:900}.astro-koharu-verbatim-home .cover,.astro-koharu-verbatim-home .wave-wrap{position:relative}.astro-koharu-verbatim-home #posts{scroll-margin-top:96px}@media(max-width:760px){.astro-koharu-verbatim-home #site-header{left:10px;right:10px;width:auto;transform:none;border-radius:24px;align-items:flex-start}.koharu-header-nav{overflow:auto;max-width:100%}}
.koharu-header-nav a:after{display:none!important;content:none!important}.koharu-nav-label{position:relative;display:inline-block;line-height:1.2}.koharu-nav-label:after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:2px;width:0;margin:auto;border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 1px 6px rgba(143,184,255,.35);transition:width .24s ease}.koharu-header-nav a:hover .koharu-nav-label:after,.koharu-header-nav a:focus-visible .koharu-nav-label:after,.koharu-header-nav a.is-active .koharu-nav-label:after{width:100%}

/* === emergency bugfix: Koharu home hero/wave/scroll + admin config layout (v8) === */
html:has(body.astro-koharu-verbatim-home){height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;scroll-behavior:smooth}
body.astro-koharu-verbatim-home{height:auto!important;min-height:100vh!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;background:#f8fafc!important}
body.astro-koharu-verbatim-home > .flex.flex-col{display:flex!important;flex-direction:column!important;min-height:100vh!important;height:auto!important;overflow:visible!important}
/* The first top-level relative flex block is the Cover hero. Tailwind arbitrary height is unavailable here, so lock it explicitly. */
body.astro-koharu-verbatim-home > .flex.flex-col > .relative.flex:first-child{position:relative!important;display:flex!important;height:60dvh!important;min-height:560px!important;max-height:800px!important;width:100%!important;overflow:hidden!important;z-index:0!important;background:#d9c5d1!important}
body.astro-koharu-verbatim-home > .flex.flex-col > .relative.flex:first-child > .absolute.inset-0{position:absolute!important;inset:0!important;z-index:1!important;height:100%!important;background:rgba(0,0,0,.40)!important;pointer-events:none!important}
body.astro-koharu-verbatim-home > .flex.flex-col > .relative.flex:first-child > .absolute.inset-0.bottom-\[8dvh\],
body.astro-koharu-verbatim-home > .flex.flex-col > .relative.flex:first-child > div:nth-child(2){position:absolute!important;inset:0!important;bottom:8dvh!important;z-index:3!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;padding-inline:20px!important;color:#fff!important;pointer-events:none!important}
body.astro-koharu-verbatim-home #banner-box{position:absolute!important;inset:0!important;z-index:0!important;width:100%!important;height:100%!important;min-height:100%!important;display:block!important;background-size:cover!important;background-position:center!important}
body.astro-koharu-verbatim-home #banner-box img{display:block!important;width:100%!important;height:100%!important;min-height:100%!important;object-fit:cover!important;object-position:center!important;opacity:1!important;filter:none!important}
/* Keep waves attached to the bottom of the cover, never near the fixed nav. */
body.astro-koharu-verbatim-home > .flex.flex-col > .relative.flex:first-child .wave-wrap{position:absolute!important;left:0!important;right:0!important;bottom:-1px!important;top:auto!important;width:100%!important;height:96px!important;z-index:4!important;pointer-events:none!important;overflow:hidden!important}
body.astro-koharu-verbatim-home > .flex.flex-col > .relative.flex:first-child .wave{display:block!important;width:100%!important;height:100%!important;min-height:80px!important;transform:none!important}
body.astro-koharu-verbatim-home > .flex.flex-col > .relative.flex:first-child .parallax>use{animation:koharuWaveMove 13s linear infinite;will-change:transform}
body.astro-koharu-verbatim-home > .flex.flex-col > .relative.flex:first-child .parallax>use:nth-child(2){animation-delay:-3s;animation-duration:10s}
body.astro-koharu-verbatim-home > .flex.flex-col > .relative.flex:first-child .parallax>use:nth-child(3){animation-delay:-5s;animation-duration:16s}
@keyframes koharuWaveMove{0%{transform:translate3d(-90px,0,0)}100%{transform:translate3d(85px,0,0)}}
body.astro-koharu-verbatim-home #site-header{position:fixed!important;top:16px!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;z-index:1000!important;pointer-events:auto!important}
body.astro-koharu-verbatim-home > .flex.flex-col > .mx-auto{position:relative!important;z-index:5!important;display:flex!important;align-items:flex-start!important;width:100%!important;max-width:80rem!important;height:auto!important;min-height:900px!important;overflow:visible!important;margin-left:auto!important;margin-right:auto!important}
body.astro-koharu-verbatim-home .page-home-sider{height:auto!important;max-height:none!important;overflow:visible!important;position:sticky!important;top:92px!important;align-self:flex-start!important;z-index:6!important}
body.astro-koharu-verbatim-home .page-home-sider .sider-content,
body.astro-koharu-verbatim-home sider-content{display:block!important;height:auto!important;max-height:none!important;overflow:visible!important;background:rgba(255,255,255,.78)!important;border-radius:24px!important;padding:14px!important;box-shadow:0 18px 48px rgba(31,41,55,.10)!important}
body.astro-koharu-verbatim-home .post-item-card,body.astro-koharu-verbatim-home .post-list,body.astro-koharu-verbatim-home #posts{height:auto!important;max-height:none!important;overflow:visible!important}
body.astro-koharu-verbatim-home .footer{padding:48px 20px 70px!important}
@media(max-width:980px){body.astro-koharu-verbatim-home > .flex.flex-col > .relative.flex:first-child{height:58dvh!important;min-height:460px!important}body.astro-koharu-verbatim-home .page-home-sider{display:none!important}body.astro-koharu-verbatim-home > .flex.flex-col > .mx-auto{display:block!important;min-height:900px!important}.astro-koharu-verbatim-home #site-header{left:10px!important;right:10px!important;width:auto!important;transform:none!important;border-radius:24px!important}}
@media(prefers-reduced-motion:reduce){body.astro-koharu-verbatim-home .parallax>use{animation:none!important}}

/* Rebuild admin config workshop layout under the new backend theme. */
body.admin-config-page.admin-panel-theme-koharu .admin-config-shell{width:min(1180px,calc(100% - 36px))!important;margin:0 auto!important;padding:118px 0 86px!important;display:block!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-hero-panel{width:100%!important;margin:0 0 22px!important;padding:30px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(240px,320px)!important;gap:24px!important;align-items:center!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-hero-copy h1{margin:.25rem 0 .65rem!important;font-size:clamp(2.2rem,4vw,4rem)!important;line-height:1!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-hero-copy p{margin:0!important;color:var(--koharu-muted)!important;line-height:1.8!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-status-card{display:grid!important;grid-template-columns:auto 1fr!important;gap:10px 14px!important;padding:18px!important;align-items:center!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-status-card span{color:var(--koharu-muted)!important;font-size:.9rem!important}.admin-config-page.admin-panel-theme-koharu .admin-config-status-card strong{justify-self:end!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-form{display:grid!important;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr)!important;gap:22px!important;align-items:start!important;width:100%!important;margin:0!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-card{width:100%!important;margin:0!important;padding:24px!important;min-width:0!important;overflow:hidden!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-card.is-wide{grid-column:1 / -1!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-card-head{display:flex!important;gap:16px!important;align-items:flex-start!important;margin-bottom:18px!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-card-head>span{flex:0 0 auto!important;display:grid!important;place-items:center!important;width:42px!important;height:42px!important;border-radius:16px!important;font-weight:900!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-card-head h2{margin:.15rem 0 .3rem!important;font-size:1.45rem!important}body.admin-config-page.admin-panel-theme-koharu .admin-config-card-head p{margin:0!important;color:var(--koharu-muted)!important;line-height:1.65!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-inner-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}body.admin-config-page.admin-panel-theme-koharu .admin-config-inner-grid.one-column{grid-template-columns:1fr!important}body.admin-config-page.admin-panel-theme-koharu .admin-config-inner-grid .full{grid-column:1 / -1!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-switch{display:flex!important;flex-wrap:wrap!important;gap:10px!important}body.admin-config-page.admin-panel-theme-koharu .admin-config-switch label{display:inline-flex!important;align-items:center!important;gap:8px!important;padding:10px 13px!important;border-radius:999px!important;cursor:pointer!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-image-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}.admin-config-page.admin-panel-theme-koharu .image-picker-field{min-width:0!important}.admin-config-page.admin-panel-theme-koharu .image-picker-field .preview-img{width:100%!important;height:180px!important;object-fit:cover!important}
body.admin-config-page.admin-panel-theme-koharu .admin-config-savebar{grid-column:1 / -1!important;position:sticky!important;bottom:16px!important;z-index:20!important;display:flex!important;justify-content:flex-end!important;gap:12px!important;padding:14px!important;border-radius:24px!important;background:rgba(255,255,255,.82)!important;border:1px solid rgba(255,255,255,.88)!important;box-shadow:0 18px 48px rgba(31,41,55,.14)!important;backdrop-filter:blur(18px)!important}
@media(max-width:920px){body.admin-config-page.admin-panel-theme-koharu .admin-config-hero-panel,body.admin-config-page.admin-panel-theme-koharu .admin-config-form,body.admin-config-page.admin-panel-theme-koharu .admin-config-inner-grid,body.admin-config-page.admin-panel-theme-koharu .admin-config-image-grid{grid-template-columns:1fr!important}body.admin-config-page.admin-panel-theme-koharu .admin-config-shell{width:min(100% - 24px,1180px)!important;padding-top:104px!important}}

/* === final Koharu home native scroll fix (v9) === */
html:has(body.astro-koharu-verbatim-home){height:auto!important;min-height:100%!important;max-height:none!important;overflow-y:scroll!important;overflow-x:hidden!important;overscroll-behavior-y:auto!important}
body.astro-koharu-verbatim-home{position:static!important;height:auto!important;min-height:100vh!important;max-height:none!important;overflow-y:visible!important;overflow-x:hidden!important;touch-action:auto!important;overscroll-behavior-y:auto!important}
body.astro-koharu-verbatim-home .koharu-home-root{display:block!important;position:relative!important;height:auto!important;min-height:160vh!important;max-height:none!important;overflow:visible!important;padding-bottom:80px!important}
body.astro-koharu-verbatim-home .koharu-home-cover{position:relative!important;display:block!important;width:100%!important;height:60dvh!important;min-height:560px!important;max-height:800px!important;overflow:hidden!important;isolation:isolate!important;background:#d9c5d1!important}
body.astro-koharu-verbatim-home .koharu-home-cover-shade{position:absolute!important;inset:0!important;z-index:1!important;background:rgba(0,0,0,.40)!important;pointer-events:none!important}
body.astro-koharu-verbatim-home .koharu-home-cover-copy{position:absolute!important;inset:0!important;bottom:8dvh!important;z-index:3!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;padding:0 20px!important;color:#fff!important;pointer-events:none!important}
body.astro-koharu-verbatim-home .koharu-home-banner{position:absolute!important;inset:0!important;z-index:0!important;width:100%!important;height:100%!important;min-height:100%!important;background-size:cover!important;background-position:center!important;overflow:hidden!important}
body.astro-koharu-verbatim-home .koharu-home-banner img{display:block!important;width:100%!important;height:100%!important;min-height:100%!important;object-fit:cover!important;object-position:center!important;opacity:1!important;filter:none!important}
body.astro-koharu-verbatim-home .koharu-home-cover .wave-wrap{position:absolute!important;left:0!important;right:0!important;bottom:-1px!important;top:auto!important;z-index:4!important;width:100%!important;height:96px!important;overflow:hidden!important;pointer-events:none!important}
body.astro-koharu-verbatim-home .koharu-home-cover .wave{display:block!important;width:100%!important;height:100%!important;min-height:80px!important}
body.astro-koharu-verbatim-home .koharu-home-main{position:relative!important;z-index:5!important;display:grid!important;grid-template-columns:272px minmax(0,1fr)!important;gap:24px!important;width:min(80rem,100% - 32px)!important;margin:0 auto!important;align-items:start!important;height:auto!important;min-height:900px!important;max-height:none!important;overflow:visible!important;padding-top:0!important}
body.astro-koharu-verbatim-home .koharu-home-sider{position:sticky!important;top:92px!important;display:block!important;align-self:start!important;width:272px!important;min-width:0!important;max-width:none!important;height:auto!important;max-height:none!important;overflow:visible!important;padding:0 8px!important;z-index:6!important}
body.astro-koharu-verbatim-home .koharu-home-sider sider-content{display:block!important;height:auto!important;min-height:520px!important;max-height:none!important;overflow:visible!important}
body.astro-koharu-verbatim-home .koharu-home-content{display:flex!important;flex-direction:column!important;gap:32px!important;min-width:0!important;width:100%!important;height:auto!important;min-height:1100px!important;max-height:none!important;overflow:visible!important}
body.astro-koharu-verbatim-home .koharu-home-content > .bg-gradient-start{height:auto!important;min-height:820px!important;max-height:none!important;overflow:visible!important}
body.astro-koharu-verbatim-home .koharu-home-content .flex.flex-col.gap-4{height:auto!important;max-height:none!important;overflow:visible!important}
body.astro-koharu-verbatim-home .post-item-card{height:auto!important;min-height:220px!important;max-height:none!important;overflow:visible!important}
body.astro-koharu-verbatim-home #site-header{position:fixed!important;z-index:1000!important;pointer-events:auto!important}
@media(max-width:980px){body.astro-koharu-verbatim-home .koharu-home-root{min-height:160vh!important}body.astro-koharu-verbatim-home .koharu-home-cover{height:58dvh!important;min-height:460px!important}body.astro-koharu-verbatim-home .koharu-home-main{display:block!important;width:min(100% - 24px,80rem)!important;min-height:1100px!important}body.astro-koharu-verbatim-home .koharu-home-sider{display:none!important}body.astro-koharu-verbatim-home .koharu-home-content{min-height:1100px!important}}

/* === global companion widget top-layer guarantee (v1) ===
   The bottom-left Live2D/cat companion must stay above every frontend/admin section. */
#witch-widget,
.witch-widget,
.witch-widget-live2d,
#waifu,
#waifu-toggle,
#waifu-tips,
#waifu-tool,
#live2d,
.sakura-live2d-widget,
.prpr.sakura-live2d-widget{
  z-index:2147483640!important;
}
#witch-widget,
.witch-widget,
.witch-widget-live2d,
.sakura-live2d-widget,
.prpr.sakura-live2d-widget{
  position:fixed!important;
  isolation:isolate!important;
  transform-style:flat!important;
  pointer-events:auto!important;
}
#witch-widget *,
.witch-widget *,
.witch-widget-live2d *,
#waifu *,
.sakura-live2d-widget *,
.prpr.sakura-live2d-widget *{
  z-index:inherit!important;
}
#witch-widget canvas,
.witch-widget canvas,
.witch-widget-live2d canvas,
#waifu canvas,
#live2d canvas,
#live2d img,
.sakura-live2d-widget img{
  position:relative!important;
  z-index:2147483641!important;
  pointer-events:auto!important;
}
#waifu-tips,
.sakura-live2d-widget .mashiro-tips{z-index:2147483642!important}
#waifu-tool,
#waifu-toggle,
.sakura-live2d-widget .live2d-tool{z-index:2147483643!important}

/* === Koharu post native scroll + home more button fix (v10) === */
html:has(body.astro-koharu-verbatim-post){height:auto!important;min-height:100%!important;max-height:none!important;overflow-y:scroll!important;overflow-x:hidden!important;overscroll-behavior-y:auto!important}
body.astro-koharu-verbatim-post{position:static!important;height:auto!important;min-height:100vh!important;max-height:none!important;overflow-y:visible!important;overflow-x:hidden!important;touch-action:auto!important;overscroll-behavior-y:auto!important;background:#f8fafc!important}
body.astro-koharu-verbatim-post .koharu-post-root{display:block!important;position:relative!important;height:auto!important;min-height:160vh!important;max-height:none!important;overflow:visible!important;padding-bottom:80px!important}
body.astro-koharu-verbatim-post .koharu-post-cover{position:relative!important;display:block!important;width:100%!important;height:60dvh!important;min-height:520px!important;max-height:760px!important;overflow:hidden!important;isolation:isolate!important;background:#d9c5d1!important}
body.astro-koharu-verbatim-post .koharu-post-cover-shade{position:absolute!important;inset:0!important;z-index:1!important;background:rgba(0,0,0,.40)!important;pointer-events:none!important}
body.astro-koharu-verbatim-post .koharu-post-cover-copy{position:absolute!important;inset:0!important;bottom:8dvh!important;z-index:3!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;padding:0 20px!important;color:#fff!important;pointer-events:none!important}
body.astro-koharu-verbatim-post .koharu-post-banner{position:absolute!important;inset:0!important;z-index:0!important;width:100%!important;height:100%!important;min-height:100%!important;background-size:cover!important;background-position:center!important;overflow:hidden!important}
body.astro-koharu-verbatim-post .koharu-post-banner img{display:block!important;width:100%!important;height:100%!important;min-height:100%!important;object-fit:cover!important;object-position:center!important;opacity:1!important;filter:none!important}
body.astro-koharu-verbatim-post .koharu-post-cover .wave-wrap{position:absolute!important;left:0!important;right:0!important;bottom:-1px!important;top:auto!important;z-index:4!important;width:100%!important;height:96px!important;overflow:hidden!important;pointer-events:none!important}
body.astro-koharu-verbatim-post .koharu-post-cover .wave{display:block!important;width:100%!important;height:100%!important;min-height:80px!important}
body.astro-koharu-verbatim-post .koharu-post-main{position:relative!important;z-index:5!important;display:grid!important;grid-template-columns:272px minmax(0,1fr)!important;gap:24px!important;width:min(80rem,100% - 32px)!important;margin:0 auto!important;align-items:start!important;height:auto!important;min-height:1100px!important;max-height:none!important;overflow:visible!important;padding-top:0!important}
body.astro-koharu-verbatim-post .koharu-post-sider{position:sticky!important;top:92px!important;display:block!important;align-self:start!important;width:272px!important;min-width:0!important;max-width:none!important;height:auto!important;max-height:none!important;overflow:visible!important;padding:0 8px!important;z-index:6!important}
body.astro-koharu-verbatim-post .koharu-post-sider-content{display:block!important;height:auto!important;min-height:520px!important;max-height:none!important;overflow:visible!important;background:rgba(255,255,255,.78)!important;border-radius:24px!important;padding:14px!important;box-shadow:0 18px 48px rgba(31,41,55,.10)!important}
body.astro-koharu-verbatim-post .koharu-post-content-column{display:flex!important;flex-direction:column!important;gap:32px!important;min-width:0!important;width:100%!important;height:auto!important;min-height:1250px!important;max-height:none!important;overflow:visible!important}
body.astro-koharu-verbatim-post .koharu-post-content-column > .shadow-box{height:auto!important;min-height:760px!important;max-height:none!important;overflow:visible!important}
body.astro-koharu-verbatim-post .prose,body.astro-koharu-verbatim-post .custom-content,body.astro-koharu-verbatim-post .astro-koharu-post-content{height:auto!important;max-height:none!important;overflow:visible!important}
body.astro-koharu-verbatim-post #site-header{position:fixed!important;z-index:1000!important;pointer-events:auto!important}
@media(max-width:980px){body.astro-koharu-verbatim-post .koharu-post-root{min-height:160vh!important}body.astro-koharu-verbatim-post .koharu-post-cover{height:58dvh!important;min-height:440px!important}body.astro-koharu-verbatim-post .koharu-post-main{display:block!important;width:min(100% - 24px,80rem)!important;min-height:1100px!important}body.astro-koharu-verbatim-post .koharu-post-sider{display:none!important}body.astro-koharu-verbatim-post .koharu-post-content-column{min-height:1100px!important}}

body.astro-koharu-verbatim-home .koharu-card-more{align-self:flex-start!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;margin-top:auto!important;padding:9px 14px!important;border-radius:999px!important;background:linear-gradient(135deg,#8fb8ff,#f6a7c5)!important;color:#fff!important;font-weight:900!important;font-size:.9rem!important;line-height:1!important;text-decoration:none!important;letter-spacing:.02em!important;box-shadow:0 12px 28px rgba(143,184,255,.22)!important;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease!important}
body.astro-koharu-verbatim-home .koharu-card-more:before{content:'Read';font-weight:900!important}body.astro-koharu-verbatim-home .koharu-card-more:after{content:'→';font-weight:900!important;transition:transform .22s ease}body.astro-koharu-verbatim-home .koharu-card-more:hover{transform:translateY(-2px)!important;box-shadow:0 16px 34px rgba(143,184,255,.30)!important;filter:saturate(1.06)!important}body.astro-koharu-verbatim-home .koharu-card-more:hover:after{transform:translateX(3px)}

/* === Koharu home read-more button text cleanup (v11) === */
body.astro-koharu-verbatim-home .koharu-card-more:before{content:none!important;display:none!important}
body.astro-koharu-verbatim-home .koharu-card-more{font-family:inherit!important;white-space:nowrap!important}

/* === companion widget click-through fix (v1) ===
   Keep the widget visually above content, but let clicks pass through the model body to underlying buttons/links. */
#witch-widget,
.witch-widget,
.witch-widget-live2d,
#waifu,
#live2d,
.sakura-live2d-widget,
.prpr.sakura-live2d-widget{
  pointer-events:none!important;
}
#witch-widget canvas,
.witch-widget canvas,
.witch-widget-live2d canvas,
#waifu canvas,
#waifu #live2d,
#waifu #waifu-toggle.waifu-toggle-live2d,
#live2d img,
.sakura-live2d-widget img,
.sakura-live2d-widget .cat-rope,
.sakura-live2d-widget .cat-head,
.sakura-live2d-widget .cat-body,
.sakura-live2d-widget .cat-paw,
.sakura-live2d-widget .cat-tail,
.sakura-live2d-widget .cat-ear,
.sakura-live2d-widget .cat-eye,
.sakura-live2d-widget .cat-mouth,
.sakura-live2d-widget .cat-whisker{
  pointer-events:none!important;
}
/* keep explicit control UI clickable */
#waifu-tool,
#waifu-toggle,
#waifu-tips,
.sakura-live2d-widget .live2d-tool,
.sakura-live2d-widget .mashiro-tips,
.sakura-live2d-widget [data-cat-toggle],
.sakura-live2d-widget [data-cat-wave]{
  pointer-events:auto!important;
}

/* === homepage header direct copy cleanup (v15) === */
body.astro-koharu-verbatim-home #site-header{
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  transform:translateY(0)!important;
  padding-top:10px!important;
  padding-bottom:10px!important;
  border-radius:0!important;
  background:linear-gradient(180deg,rgba(15,23,42,.20),rgba(15,23,42,0))!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  transition:transform .3s ease,background .3s ease,backdrop-filter .3s ease,box-shadow .3s ease!important;
}
body.astro-koharu-verbatim-home #site-header.with-background,
body.astro-koharu-verbatim-home #site-header:hover{
  background:rgba(255,255,255,.72)!important;
  box-shadow:0 12px 36px rgba(15,23,42,.12)!important;
  backdrop-filter:blur(18px) saturate(1.16)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.16)!important;
}
body.astro-koharu-verbatim-home #site-header.-translate-y-full{transform:translateY(-100%)!important}
body.astro-koharu-verbatim-home #site-header > div{
  max-width:80rem!important;
  justify-content:space-between!important;
  gap:14px!important;
}
body.astro-koharu-verbatim-home #site-header a{
  text-decoration:none!important;
}
body.astro-koharu-verbatim-home #site-header .logo-text{
  display:inline-flex!important;
  align-items:center!important;
  min-height:40px!important;
  font-size:1.05rem!important;
  font-weight:700!important;
  letter-spacing:.01em!important;
  color:#fff!important;
  text-shadow:0 2px 14px rgba(0,0,0,.28)!important;
}
body.astro-koharu-verbatim-home #site-header.with-background .logo-text,
body.astro-koharu-verbatim-home #site-header:hover .logo-text{
  color:#273244!important;
  text-shadow:none!important;
}
body.astro-koharu-verbatim-home #site-header .flex.grow.tablet\:grow-0.items-center{
  flex:1 1 auto!important;
  min-width:0!important;
}
body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center{
  display:flex!important;
  align-items:center!important;
  gap:0!important;
  min-width:0!important;
}
body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center > a{
  color:#fff!important;
  text-shadow:0 2px 14px rgba(0,0,0,.28)!important;
  font-size:1rem!important;
  font-weight:500!important;
  letter-spacing:.045em!important;
  padding:8px 13px!important;
  min-height:40px!important;
  border-radius:999px!important;
  transition:color .3s ease,background .3s ease!important;
}
body.astro-koharu-verbatim-home #site-header.with-background .flex.tablet\:hidden.grow.items-center > a,
body.astro-koharu-verbatim-home #site-header:hover .flex.tablet\:hidden.grow.items-center > a{
  color:#334155!important;
  text-shadow:none!important;
}
body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center > a:hover{
  color:#2563eb!important;
  background:rgba(143,184,255,.14)!important;
}
body.astro-koharu-verbatim-home #site-header .koharu-nav-label{
  position:relative!important;
  display:inline-block!important;
  line-height:1.2!important;
  font-weight:500!important;
}
body.astro-koharu-verbatim-home #site-header .koharu-nav-label:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-5px;
  width:0;
  height:2px;
  border-radius:999px;
  background:currentColor;
  opacity:.95;
  transform:translateX(-50%);
  transition:width .24s ease;
}
body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center > a:hover .koharu-nav-label:after,
body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center > a.is-active .koharu-nav-label:after{width:100%}
body.astro-koharu-verbatim-home #site-header .koharu-admin-pill{
  min-height:40px!important;
  padding:0 14px!important;
  font-size:.95rem!important;
  font-weight:700!important;
  box-shadow:none!important;
}
body.astro-koharu-verbatim-home #site-header.with-background .koharu-admin-pill,
body.astro-koharu-verbatim-home #site-header:hover .koharu-admin-pill{
  box-shadow:0 10px 24px rgba(143,184,255,.18)!important;
}
@media(max-width:980px){
  body.astro-koharu-verbatim-home #site-header{left:10px!important;right:10px!important;width:auto!important;border-radius:24px!important;transform:none!important}
  body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center{display:none!important}
}

/* === astro-koharu direct home/card + left nav correction (v16) === */
body.astro-koharu-verbatim-home #site-header{
  top:0!important;left:0!important;right:0!important;width:100%!important;transform:translateY(0)!important;
  border-radius:0!important;padding:10px 0!important;background:linear-gradient(180deg,rgba(15,23,42,.20),rgba(15,23,42,0))!important;
  box-shadow:none!important;border:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
body.astro-koharu-verbatim-home #site-header.-translate-y-full{transform:translateY(-100%)!important}
body.astro-koharu-verbatim-home #site-header > div{max-width:80rem!important;margin-left:auto!important;margin-right:auto!important;width:100%!important;justify-content:flex-start!important;gap:16px!important}
body.astro-koharu-verbatim-home #site-header .flex.grow.tablet\:grow-0.items-center{flex:0 1 auto!important;margin-left:0!important;min-width:0!important}
body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center{flex:0 1 auto!important;justify-content:flex-start!important;gap:0!important}
body.astro-koharu-verbatim-home #site-header .ml-auto{margin-left:0!important}
body.astro-koharu-verbatim-home #site-header .logo-text{font-size:1.05rem!important;font-weight:700!important;color:#fff!important;text-shadow:0 2px 14px rgba(0,0,0,.28)!important}
body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center > a{color:#fff!important;text-shadow:0 2px 14px rgba(0,0,0,.28)!important;font-size:1rem!important;font-weight:500!important;letter-spacing:.045em!important;background:transparent!important;box-shadow:none!important}
body.astro-koharu-verbatim-home #site-header.with-background,
body.astro-koharu-verbatim-home #site-header:hover{background:rgba(255,255,255,.72)!important;box-shadow:0 12px 36px rgba(15,23,42,.12)!important;backdrop-filter:blur(18px) saturate(1.16)!important;-webkit-backdrop-filter:blur(18px) saturate(1.16)!important}
body.astro-koharu-verbatim-home #site-header.with-background .logo-text,
body.astro-koharu-verbatim-home #site-header:hover .logo-text,
body.astro-koharu-verbatim-home #site-header.with-background .flex.tablet\:hidden.grow.items-center > a,
body.astro-koharu-verbatim-home #site-header:hover .flex.tablet\:hidden.grow.items-center > a{color:#334155!important;text-shadow:none!important}

body.astro-koharu-verbatim-home .post-item-card{position:relative!important;display:flex!important;flex-direction:row!important;min-height:186px!important;height:auto!important;border-radius:.5rem!important;background:#fff!important;box-shadow:0 12px 32px rgba(31,41,55,.10)!important;overflow:hidden!important;transition:box-shadow .3s ease!important}
body.astro-koharu-verbatim-home .post-item-card:hover{box-shadow:0 18px 46px rgba(31,41,55,.16)!important;transform:none!important}
body.astro-koharu-verbatim-home .koharu-card-cover{position:relative!important;height:11.625rem!important;max-height:11.625rem!important;width:calc(50% - 2rem)!important;flex:0 0 calc(50% - 2rem)!important;overflow:hidden!important;background:linear-gradient(135deg,#ebbdce,#efcbd5 50%,#eac6d3)!important}
body.astro-koharu-verbatim-home .koharu-card-cover img{width:100%!important;height:100%!important;object-fit:cover!important;opacity:1!important;filter:none!important;transition:transform .5s ease!important}
body.astro-koharu-verbatim-home .post-item-card:hover .koharu-card-cover img{transform:scale(1.10) rotate(3deg)!important}
body.astro-koharu-verbatim-home .clip-path-post-img-left{clip-path:polygon(0 0,92% 0%,100% 100%,0% 100%)!important;border-radius:.5rem 0 0 .5rem!important;order:1!important}
body.astro-koharu-verbatim-home .clip-path-post-img-right{clip-path:polygon(0 0%,100% 0%,100% 100%,8% 100%)!important;border-radius:0 .5rem .5rem 0!important;order:2!important}
body.astro-koharu-verbatim-home .koharu-card-body{position:relative!important;width:calc(50% + 2rem)!important;flex:1 1 calc(50% + 2rem)!important;display:flex!important;flex-direction:column!important;gap:.5rem!important;padding:1rem 1rem .5rem!important;min-width:0!important;overflow:visible!important}
body.astro-koharu-verbatim-home .koharu-card-body.koharu-left-cover-text-offset{margin-left:-.75rem!important}
body.astro-koharu-verbatim-home .is-left-cover .koharu-card-body{order:2!important}
body.astro-koharu-verbatim-home .is-right-cover .koharu-card-body{order:1!important}
body.astro-koharu-verbatim-home .koharu-card-topline{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:1rem!important;min-width:0!important;width:100%!important;overflow:hidden!important;color:#748094!important;font-size:.75rem!important;white-space:nowrap!important}
body.astro-koharu-verbatim-home .koharu-card-category{display:inline-flex!important;align-items:center!important;gap:.25rem!important;flex:0 0 auto!important;color:#748094!important;text-decoration:none!important;transition:color .3s ease!important}
body.astro-koharu-verbatim-home .koharu-card-category:hover{color:#2563eb!important}
body.astro-koharu-verbatim-home .koharu-card-stats{display:flex!important;align-items:center!important;gap:.75rem!important;flex:0 1 auto!important;overflow:auto!important;scrollbar-width:none!important;color:#748094!important}
body.astro-koharu-verbatim-home .koharu-card-stats::-webkit-scrollbar{display:none!important}
body.astro-koharu-verbatim-home .koharu-card-stats span{flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;gap:.25rem!important}
body.astro-koharu-verbatim-home .koharu-card-body h2{margin:0!important;font-size:1.25rem!important;line-height:1.75rem!important;font-weight:700!important;color:#8fb8ff!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;transition:color .3s ease!important}
body.astro-koharu-verbatim-home .koharu-card-body h2:hover{color:#2563eb!important}
body.astro-koharu-verbatim-home .koharu-card-body p{margin:0!important;height:3.75rem!important;display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;overflow:hidden!important;color:#748094!important;font-size:.875rem!important;line-height:1.25rem!important}
body.astro-koharu-verbatim-home .koharu-card-tags{display:flex!important;align-items:center!important;gap:.5rem!important;overflow:auto!important;padding:.25rem 0!important;margin-right:4.5rem!important;scrollbar-width:none!important}
body.astro-koharu-verbatim-home .is-right-cover .koharu-card-tags{margin-left:4.5rem!important;margin-right:0!important}
body.astro-koharu-verbatim-home .koharu-card-tags::-webkit-scrollbar{display:none!important}
body.astro-koharu-verbatim-home .koharu-card-tags a{text-decoration:none!important;color:inherit!important;flex:0 0 auto!important}
body.astro-koharu-verbatim-home .koharu-card-tags span{display:inline-flex!important;align-items:center!important;gap:.125rem!important;font-size:.75rem!important;font-weight:700!important;color:#748094!important;border:0!important;background:transparent!important;padding:0!important;white-space:nowrap!important}
body.astro-koharu-verbatim-home .koharu-card-more{position:absolute!important;bottom:-.25rem!important;margin:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:auto!important;padding:.5rem .85rem!important;border-radius:1rem!important;background:linear-gradient(135deg,#8fb8ff,#f6a7c5)!important;color:#fff!important;font-size:.875rem!important;font-weight:700!important;line-height:1.2!important;text-decoration:none!important;box-shadow:none!important;transition:transform .2s ease!important}
body.astro-koharu-verbatim-home .koharu-card-more:after{content:none!important}
body.astro-koharu-verbatim-home .koharu-card-more.is-right-button{right:-.25rem!important;border-top-right-radius:0!important;border-bottom-left-radius:0!important}
body.astro-koharu-verbatim-home .koharu-card-more.is-left-button{left:-.25rem!important;border-top-left-radius:0!important;border-bottom-right-radius:0!important}
body.astro-koharu-verbatim-home .koharu-card-more.is-right-button:hover{transform:translateX(.25rem) translateY(.25rem) scale(1.05)!important}
body.astro-koharu-verbatim-home .koharu-card-more.is-left-button:hover{transform:translateX(-.25rem) translateY(.25rem) scale(1.05)!important}
@media(max-width:980px){body.astro-koharu-verbatim-home #site-header{left:0!important;right:0!important;width:100%!important;border-radius:0!important}body.astro-koharu-verbatim-home .post-item-card{flex-direction:column!important}body.astro-koharu-verbatim-home .koharu-card-cover,body.astro-koharu-verbatim-home .koharu-card-body{width:100%!important;flex-basis:auto!important;margin-left:0!important;order:0!important}body.astro-koharu-verbatim-home .koharu-card-cover{height:11.625rem!important;max-height:none!important;clip-path:none!important;border-radius:.5rem .5rem 0 0!important}body.astro-koharu-verbatim-home .koharu-card-tags,body.astro-koharu-verbatim-home .is-right-cover .koharu-card-tags{margin-left:0!important;margin-right:0!important}body.astro-koharu-verbatim-home .koharu-card-more,body.astro-koharu-verbatim-home .koharu-card-more.is-left-button,body.astro-koharu-verbatim-home .koharu-card-more.is-right-button{left:auto!important;right:-.25rem!important;border-radius:1rem 0 1rem 0!important}}

/* === remove duplicate right admin pill; keep nav item only (v17) === */
body.astro-koharu-verbatim-home #site-header .koharu-admin-pill{display:none!important}

/* === exact PostItemCard class support; remove previous homemade card overrides (v18) === */
body.astro-koharu-verbatim-home .post-item-card{position:relative!important;display:flex!important;border-radius:.5rem!important;background:#fff!important;box-shadow:0 12px 32px rgba(31,41,55,.10)!important;overflow:visible!important;transition:box-shadow .3s ease!important;min-height:0!important;height:auto!important}
body.astro-koharu-verbatim-home .post-item-card:hover{box-shadow:0 18px 46px rgba(31,41,55,.16)!important;transform:none!important}
body.astro-koharu-verbatim-home .h-46\.5{height:11.625rem!important}.max-h-46\.5{max-height:11.625rem!important}
body.astro-koharu-verbatim-home .w-\[calc\(50\%-2rem\)\]{width:calc(50% - 2rem)!important;flex:0 0 calc(50% - 2rem)!important}
body.astro-koharu-verbatim-home .w-\[calc\(50\%\+2rem\)\]{width:calc(50% + 2rem)!important;flex:1 1 calc(50% + 2rem)!important}
body.astro-koharu-verbatim-home .-ml-3{margin-left:-.75rem!important}body.astro-koharu-verbatim-home .mr-18{margin-right:4.5rem!important}body.astro-koharu-verbatim-home .ml-18{margin-left:4.5rem!important}
body.astro-koharu-verbatim-home .order-1{order:1!important}body.astro-koharu-verbatim-home .order-2{order:2!important}
body.astro-koharu-verbatim-home .clip-path-post-img-left{clip-path:polygon(0 0,92% 0%,100% 100%,0% 100%)!important}
body.astro-koharu-verbatim-home .clip-path-post-img-right{clip-path:polygon(0 0%,100% 0%,100% 100%,8% 100%)!important}
body.astro-koharu-verbatim-home .post-item-card img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;opacity:1!important;filter:none!important;transition:transform .5s ease!important}
body.astro-koharu-verbatim-home .post-item-card:hover img{transform:scale(1.10) rotate(3deg)!important}
body.astro-koharu-verbatim-home .post-item-card a{text-decoration:none!important;color:inherit!important}
body.astro-koharu-verbatim-home .post-item-card h2{margin:0!important;color:#8fb8ff!important;line-height:1.75rem!important}
body.astro-koharu-verbatim-home .post-item-card p{margin:0!important}
body.astro-koharu-verbatim-home .h-15{height:3.75rem!important}.line-clamp-1{overflow:hidden!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:1!important}.line-clamp-3{overflow:hidden!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important}
body.astro-koharu-verbatim-home .scrollbar-hidden{scrollbar-width:none!important}body.astro-koharu-verbatim-home .scrollbar-hidden::-webkit-scrollbar{display:none!important}
body.astro-koharu-verbatim-home .koharu-more-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:.5rem .85rem!important;color:#fff!important;font-weight:700!important;line-height:1.2!important}
body.astro-koharu-verbatim-home .post-item-card .koharu-card-cover,body.astro-koharu-verbatim-home .post-item-card .koharu-card-body,body.astro-koharu-verbatim-home .post-item-card .koharu-card-more{all:unset!important}
@media(max-width:980px){body.astro-koharu-verbatim-home .post-item-card{flex-direction:column!important;overflow:hidden!important}body.astro-koharu-verbatim-home .md\:w-auto{width:auto!important;flex-basis:auto!important}body.astro-koharu-verbatim-home .md\:w-full{width:100%!important;flex-basis:auto!important}body.astro-koharu-verbatim-home .md\:order-0{order:0!important}body.astro-koharu-verbatim-home .md\:clip-path-none{clip-path:none!important}body.astro-koharu-verbatim-home .md\:mx-0{margin-left:0!important;margin-right:0!important}body.astro-koharu-verbatim-home .-ml-3{margin-left:0!important}}

/* === homepage near-cosine layout pass; keep live2d untouched (v19) === */
html:has(body.astro-koharu-verbatim-home){height:auto!important;min-height:100%!important;overflow-y:scroll!important;overflow-x:hidden!important;scroll-behavior:smooth!important}
body.astro-koharu-verbatim-home{margin:0!important;background:#f8fafc!important;color:#111827!important;min-height:100vh!important;overflow-x:hidden!important;overflow-y:visible!important}
body.astro-koharu-verbatim-home .koharu-home-root{display:flex!important;position:relative!important;flex-direction:column!important;gap:1rem!important;min-height:100vh!important;height:auto!important;max-height:none!important;overflow:visible!important;padding-bottom:0!important}
body.astro-koharu-verbatim-home .koharu-home-root > .flex.flex-col{display:flex!important;flex-direction:column!important;min-height:100vh!important;height:auto!important;overflow:visible!important}
body.astro-koharu-verbatim-home .koharu-home-cover{position:relative!important;display:flex!important;width:100%!important;height:60dvh!important;min-height:0!important;max-height:50rem!important;overflow:hidden!important;z-index:0!important;isolation:auto!important;background:#d9c5d1!important}
body.astro-koharu-verbatim-home .koharu-home-cover-shade{position:absolute!important;inset:0!important;height:100%!important;z-index:1!important;background:rgba(0,0,0,.40)!important;pointer-events:none!important}
body.astro-koharu-verbatim-home .koharu-home-cover-copy{position:absolute!important;inset:0!important;bottom:8dvh!important;z-index:2!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;padding:0 1.25rem!important;text-align:center!important;color:#fff!important;pointer-events:none!important}
body.astro-koharu-verbatim-home .koharu-home-cover-copy h2{margin:0!important;font-size:3rem!important;line-height:1.2!important;font-weight:400!important}
body.astro-koharu-verbatim-home .koharu-home-cover-copy h1{margin:.75rem 0 0!important;font-size:3rem!important;line-height:1.2!important;font-weight:700!important;letter-spacing:.1em!important}
body.astro-koharu-verbatim-home .koharu-home-cover-copy p{margin:1.25rem 0 0!important;font-size:.875rem!important;line-height:1.25rem!important}
body.astro-koharu-verbatim-home .koharu-home-banner{position:relative!important;inset:auto!important;z-index:-1!important;display:block!important;width:100%!important;height:100%!important;min-height:15rem!important;overflow:hidden!important;background-size:cover!important;background-position:center!important}
body.astro-koharu-verbatim-home .koharu-home-banner img{display:block!important;width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important;object-position:center!important;opacity:1!important;filter:none!important}
body.astro-koharu-verbatim-home .koharu-home-cover .wave-wrap{position:absolute!important;left:0!important;right:0!important;bottom:-1px!important;top:auto!important;z-index:4!important;width:100%!important;height:96px!important;overflow:hidden!important;pointer-events:none!important}
body.astro-koharu-verbatim-home .koharu-home-cover .wave{display:block!important;width:100%!important;height:100%!important;min-height:80px!important}
body.astro-koharu-verbatim-home .koharu-home-main{position:relative!important;z-index:5!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;width:100%!important;max-width:80rem!important;min-height:0!important;height:auto!important;margin-left:auto!important;margin-right:auto!important;overflow:visible!important}
body.astro-koharu-verbatim-home .koharu-home-sider{position:sticky!important;top:0!important;display:flex!important;align-self:flex-start!important;flex-direction:column!important;align-items:stretch!important;min-width:16rem!important;max-width:16rem!important;width:16rem!important;height:100vh!important;max-height:none!important;overflow:auto!important;padding-left:.5rem!important;padding-right:.5rem!important;z-index:6!important;background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body.astro-koharu-verbatim-home .koharu-home-sider sider-content,
body.astro-koharu-verbatim-home .koharu-home-sider .sider-content,
body.astro-koharu-verbatim-home .page-home-sider sider-content{display:block!important;flex:1 1 0%!important;height:auto!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;padding:0!important;background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body.astro-koharu-verbatim-home [data-home-info-container]{padding-top:4.5rem!important;padding-bottom:.5rem!important}
body.astro-koharu-verbatim-home [data-home-info-container] .h-40.w-40{width:10rem!important;height:10rem!important;border-radius:9999px!important}
body.astro-koharu-verbatim-home [data-home-info-container] img{border-radius:9999px!important;box-shadow:0 18px 46px rgba(31,41,55,.16)!important}
body.astro-koharu-verbatim-home .koharu-social-row .social-link{color:#64748b!important;background:transparent!important;box-shadow:none!important;min-width:2rem!important;min-height:2rem!important;font-size:1.25rem!important}
body.astro-koharu-verbatim-home .koharu-social-row .social-link:hover{background:rgba(15,23,42,.06)!important;transform:scale(1.05)!important}
body.astro-koharu-verbatim-home .koharu-home-content{display:flex!important;min-width:0!important;flex-grow:1!important;flex-direction:column!important;gap:2rem!important;width:auto!important;max-width:none!important;overflow:visible!important}
body.astro-koharu-verbatim-home .koharu-home-content > .shadow-box{display:flex!important;flex-direction:column!important;gap:1rem!important;overflow:hidden!important;padding:2rem 2.5rem!important;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(245,248,255,.86))!important;box-shadow:0 18px 48px rgba(31,41,55,.10)!important;border-radius:0!important;border:0!important}
body.astro-koharu-verbatim-home .footer{padding:0 1.25rem 4rem!important;color:#748094!important;text-align:center!important;background:transparent!important}
body.astro-koharu-verbatim-home #posts{scroll-margin-top:5rem!important}
body.astro-koharu-verbatim-home #site-header{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;transform:translateY(0)!important;z-index:30!important;padding:.625rem 0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;color:#fff!important}
body.astro-koharu-verbatim-home #site-header > div{width:100%!important;max-width:80rem!important;margin-left:auto!important;margin-right:auto!important;padding-left:1.5rem!important;padding-right:1.5rem!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:1rem!important}
body.astro-koharu-verbatim-home #site-header .flex.grow.tablet\:grow-0.items-center{flex:1 1 auto!important;min-width:0!important}
body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center{display:flex!important;align-items:center!important;flex:1 1 auto!important;justify-content:flex-start!important;gap:0!important;min-width:0!important}
body.astro-koharu-verbatim-home #site-header .ml-auto{margin-left:auto!important}
body.astro-koharu-verbatim-home #site-header .koharu-admin-pill{display:none!important}
body.astro-koharu-verbatim-home #site-header.with-background,
body.astro-koharu-verbatim-home #site-header:hover{background:rgba(255,255,255,.72)!important;box-shadow:none!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important}
body.astro-koharu-verbatim-home #site-header.-translate-y-full{transform:translateY(-100%)!important}
@media(max-width:980px){body.astro-koharu-verbatim-home .koharu-home-cover{height:60dvh!important;min-height:0!important}body.astro-koharu-verbatim-home .koharu-home-sider{display:none!important}body.astro-koharu-verbatim-home .koharu-home-main{display:block!important;width:100%!important;max-width:none!important}body.astro-koharu-verbatim-home .koharu-home-content > .shadow-box{padding:1.5rem 1rem .5rem!important;box-shadow:none!important}body.astro-koharu-verbatim-home #site-header{left:0!important;right:0!important;width:100%!important;border-radius:0!important}body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center{display:none!important}body.astro-koharu-verbatim-home .koharu-home-cover-copy h1,body.astro-koharu-verbatim-home .koharu-home-cover-copy h2{font-size:2rem!important}}

/* === homepage cosine parity: header actions + fine tuning (v20) === */
body.astro-koharu-verbatim-home #site-header{height:auto!important;min-height:3.5rem!important;display:block!important;transition:transform .3s ease,background .3s ease,backdrop-filter .3s ease!important}
body.astro-koharu-verbatim-home #site-header > div{min-height:2.5rem!important}
body.astro-koharu-verbatim-home #site-header a,body.astro-koharu-verbatim-home #site-header button{color:inherit!important;background:transparent!important;border:0!important;box-shadow:none!important;text-decoration:none!important;padding:0!important}
body.astro-koharu-verbatim-home #site-header .logo-text{display:inline-flex!important;align-items:center!important;height:2rem!important;font-size:1.45rem!important;font-weight:800!important;letter-spacing:.02em!important;color:#fff!important;text-shadow:0 2px 12px rgba(0,0,0,.35)!important;white-space:nowrap!important}
body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center > a{position:relative!important;display:flex!important;align-items:center!important;padding:.5rem .75rem!important;font-size:1rem!important;line-height:1.5rem!important;letter-spacing:.05em!important;color:#fff!important;text-shadow:0 2px 12px rgba(0,0,0,.35)!important;transition:transform .3s ease,color .3s ease!important;border-radius:0!important}
body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center > a:after{content:""!important;position:absolute!important;left:50%!important;bottom:.25rem!important;display:block!important;width:0!important;height:2px!important;background:currentColor!important;transform:translateX(-50%)!important;transition:width .3s ease!important;border-radius:0!important;box-shadow:none!important}
body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center > a:hover:after,
body.astro-koharu-verbatim-home #site-header .flex.tablet\:hidden.grow.items-center > a.is-active:after{width:75%!important}
body.astro-koharu-verbatim-home #site-header .koharu-nav-label:after{display:none!important;content:none!important}
body.astro-koharu-verbatim-home .koharu-header-actions{margin-left:auto!important;display:flex!important;align-items:center!important;gap:.5rem!important;color:#fff!important;text-shadow:0 2px 12px rgba(0,0,0,.35)!important}
body.astro-koharu-verbatim-home .koharu-search-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:2rem!important;height:2rem!important;cursor:pointer!important;transition:transform .3s ease!important}
body.astro-koharu-verbatim-home .koharu-search-button svg{width:2rem!important;height:2rem!important;display:block!important}
body.astro-koharu-verbatim-home .koharu-language-button{width:2rem!important;height:2rem!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important}
body.astro-koharu-verbatim-home .koharu-language-button span:before{content:attr(data-lang);font-size:.85rem!important;font-weight:700!important}
body.astro-koharu-verbatim-home .koharu-theme-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:3rem!important;height:2rem!important;transform:scale(.8)!important;cursor:pointer!important}
body.astro-koharu-verbatim-home .theme-toggle .toggle{position:relative!important;display:block!important;width:3.2rem!important;height:1.8rem!important;border-radius:999px!important;background:rgba(255,255,255,.28)!important;border:1px solid rgba(255,255,255,.36)!important;box-shadow:inset 0 1px 4px rgba(0,0,0,.12)!important}
body.astro-koharu-verbatim-home .theme-toggle .toggle-indicator{position:absolute!important;left:.18rem!important;top:.18rem!important;width:1.4rem!important;height:1.4rem!important;border-radius:50%!important;background:#fff!important;box-shadow:0 2px 8px rgba(0,0,0,.20)!important}
body.astro-koharu-verbatim-home #site-header.with-background,
body.astro-koharu-verbatim-home #site-header:hover{background:rgba(255,255,255,.62)!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;color:#334155!important;text-shadow:none!important}
body.astro-koharu-verbatim-home #site-header.with-background .logo-text,
body.astro-koharu-verbatim-home #site-header:hover .logo-text,
body.astro-koharu-verbatim-home #site-header.with-background .flex.tablet\:hidden.grow.items-center > a,
body.astro-koharu-verbatim-home #site-header:hover .flex.tablet\:hidden.grow.items-center > a,
body.astro-koharu-verbatim-home #site-header.with-background .koharu-header-actions,
body.astro-koharu-verbatim-home #site-header:hover .koharu-header-actions{color:#334155!important;text-shadow:none!important}
body.astro-koharu-verbatim-home #site-header.with-background .theme-toggle .toggle,
body.astro-koharu-verbatim-home #site-header:hover .theme-toggle .toggle{background:rgba(100,116,139,.18)!important;border-color:rgba(100,116,139,.24)!important}
body.astro-koharu-verbatim-home .koharu-home-cover-copy h2,body.astro-koharu-verbatim-home .koharu-home-cover-copy h1{font-family:inherit!important;text-shadow:0 2px 14px rgba(0,0,0,.38)!important}
body.astro-koharu-verbatim-home .shadow-home-sider{filter:none!important}
body.astro-koharu-verbatim-home [data-home-info-container] p{margin-block-start:.5rem!important;margin-block-end:0!important}
body.astro-koharu-verbatim-home [data-home-info-container] .text-muted-foreground.mt-3{text-align:center!important;color:#64748b!important;line-height:1.45!important}
body.astro-koharu-verbatim-home [data-home-info-container] .mt-6 a{opacity:.75!important;transition:opacity .3s ease,transform .3s ease!important}
body.astro-koharu-verbatim-home [data-home-info-container] .mt-6 a:hover{opacity:1!important;transform:translateY(-1px)!important}
body.astro-koharu-verbatim-home .koharu-home-content > .shadow-box{border-radius:0!important;margin:0!important}
@media(max-width:980px){body.astro-koharu-verbatim-home #site-header{height:3.5rem!important;min-height:3.5rem!important}body.astro-koharu-verbatim-home .koharu-header-actions{display:none!important}body.astro-koharu-verbatim-home #site-header .logo-text{display:none!important}}

/* === homepage controls wiring: search/lang/theme (v21) === */
body.astro-koharu-verbatim-home .theme-toggle input:checked + .toggle-indicator{left:1.58rem!important}
html.dark body.astro-koharu-verbatim-home{background:#0f172a!important;color:#e5e7eb!important}
html.dark body.astro-koharu-verbatim-home .koharu-home-content > .shadow-box{background:linear-gradient(135deg,rgba(15,23,42,.92),rgba(30,41,59,.88))!important;box-shadow:0 18px 48px rgba(2,6,23,.38)!important}
html.dark body.astro-koharu-verbatim-home .post-item-card{background:#111827!important;box-shadow:0 12px 32px rgba(2,6,23,.36)!important}
html.dark body.astro-koharu-verbatim-home .post-item-card h2{color:#c4b5fd!important}
html.dark body.astro-koharu-verbatim-home .text-muted-foreground,
html.dark body.astro-koharu-verbatim-home [data-home-info-container] .text-muted-foreground.mt-3,
html.dark body.astro-koharu-verbatim-home .footer{color:#94a3b8!important}
html.dark body.astro-koharu-verbatim-home #site-header.with-background,
html.dark body.astro-koharu-verbatim-home #site-header:hover{background:rgba(15,23,42,.62)!important;color:#e5e7eb!important}
html.dark body.astro-koharu-verbatim-home #site-header.with-background .logo-text,
html.dark body.astro-koharu-verbatim-home #site-header:hover .logo-text,
html.dark body.astro-koharu-verbatim-home #site-header.with-background .flex.tablet\:hidden.grow.items-center > a,
html.dark body.astro-koharu-verbatim-home #site-header:hover .flex.tablet\:hidden.grow.items-center > a,
html.dark body.astro-koharu-verbatim-home #site-header.with-background .koharu-header-actions,
html.dark body.astro-koharu-verbatim-home #site-header:hover .koharu-header-actions{color:#e5e7eb!important}
body.astro-koharu-verbatim-home .koharu-search-dialog[hidden]{display:none!important}
body.astro-koharu-verbatim-home .koharu-search-dialog{position:fixed!important;inset:0!important;z-index:4000!important}
body.astro-koharu-verbatim-home .koharu-search-backdrop{position:absolute!important;inset:0!important;background:rgba(15,23,42,.52)!important;backdrop-filter:blur(6px)!important;-webkit-backdrop-filter:blur(6px)!important}
body.astro-koharu-verbatim-home .koharu-search-panel{position:relative!important;width:min(720px,calc(100% - 24px))!important;margin:12vh auto 0!important;border-radius:24px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 24px 64px rgba(15,23,42,.28)!important;border:1px solid rgba(255,255,255,.84)!important;overflow:hidden!important}
html.dark body.astro-koharu-verbatim-home .koharu-search-panel{background:rgba(15,23,42,.96)!important;border-color:rgba(148,163,184,.18)!important}
body.astro-koharu-verbatim-home .koharu-search-head{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:16px 18px!important;border-bottom:1px solid rgba(148,163,184,.18)!important}
body.astro-koharu-verbatim-home .koharu-search-close{font-size:28px!important;line-height:1!important;cursor:pointer!important;color:inherit!important}
body.astro-koharu-verbatim-home .koharu-search-body{padding:16px 18px 18px!important}
body.astro-koharu-verbatim-home .koharu-search-input{width:100%!important;padding:14px 16px!important;border-radius:16px!important;border:1px solid rgba(148,163,184,.24)!important;background:rgba(248,250,252,.96)!important;color:inherit!important;font:inherit!important}
html.dark body.astro-koharu-verbatim-home .koharu-search-input{background:rgba(30,41,59,.92)!important;border-color:rgba(148,163,184,.18)!important}
body.astro-koharu-verbatim-home .koharu-search-results{display:flex!important;flex-direction:column!important;gap:10px!important;margin-top:14px!important;max-height:56vh!important;overflow:auto!important}
body.astro-koharu-verbatim-home .koharu-search-item{display:block!important;padding:12px 14px!important;border-radius:16px!important;background:rgba(248,250,252,.92)!important;color:inherit!important;text-decoration:none!important;border:1px solid rgba(148,163,184,.12)!important}
html.dark body.astro-koharu-verbatim-home .koharu-search-item{background:rgba(30,41,59,.92)!important;border-color:rgba(148,163,184,.16)!important}
body.astro-koharu-verbatim-home .koharu-search-item strong{display:block!important;margin-bottom:4px!important}
body.astro-koharu-verbatim-home .koharu-search-empty{padding:10px 4px!important;color:#64748b!important}

/* === Article media collapsible panels (v1) === */
.article-media-collapsible{
  margin-top:28px;
  border-radius:18px;
  border:1px solid rgba(111,183,193,.16);
  background:rgba(255,255,255,.58);
  overflow:hidden;
  box-shadow:0 10px 28px rgba(70,98,120,.06);
}
.article-media-collapsible summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:15px 18px;
  font-weight:900;
  color:var(--ink);
  background:linear-gradient(135deg,rgba(111,183,193,.10),rgba(255,154,158,.08));
}
.article-media-collapsible summary::-webkit-details-marker{display:none}
.article-media-collapsible summary:after{
  content:'⌄';
  flex:0 0 auto;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:var(--theme);
  transition:transform .22s ease;
}
.article-media-collapsible[open] summary:after{transform:rotate(180deg)}
.article-media-collapsible summary em{
  margin-left:auto;
  font-style:normal;
  font-size:.86rem;
  font-weight:700;
  color:var(--muted);
}
.article-media-collapsible>.article-image-grid,
.article-media-collapsible>.article-attachment-list{
  margin:0;
  padding:18px;
}
.article-theme-koharu .article-media-collapsible{
  background:rgba(255,255,255,.74);
  border-color:rgba(127,127,127,.10);
  box-shadow:0 12px 30px rgba(60,80,110,.07);
}
.article-theme-koharu .article-media-collapsible summary{
  background:rgba(127,127,127,.06);
  color:var(--foreground,#2f3440);
}
.dark .article-theme-koharu .article-media-collapsible{
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.10);
}
.dark .article-theme-koharu .article-media-collapsible summary{
  background:rgba(255,255,255,.06);
  color:#fff;
}
@media(max-width:700px){
  .article-media-collapsible summary{align-items:flex-start;flex-direction:column;padding:14px 15px;position:relative;padding-right:54px}
  .article-media-collapsible summary:after{position:absolute;right:14px;top:13px}
  .article-media-collapsible summary em{margin-left:0}
  .article-media-collapsible>.article-image-grid,
  .article-media-collapsible>.article-attachment-list{padding:14px}
}

/* === Koharu home -> post seamless transition (v1) === */
.koharu-route-transition-layer{
  position:fixed;
  inset:0;
  z-index:2147483000;
  pointer-events:none;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:rgba(248,250,252,0);
  opacity:0;
  transition:opacity .22s ease,background .22s ease;
}
.koharu-route-transition-layer.is-active{
  opacity:1;
  background:rgba(248,250,252,.72);
  backdrop-filter:blur(10px) saturate(1.08);
  -webkit-backdrop-filter:blur(10px) saturate(1.08);
}
.koharu-route-transition-card{
  width:min(760px,calc(100vw - 28px));
  min-height:220px;
  border-radius:26px;
  overflow:hidden;
  background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(245,248,255,.88));
  box-shadow:0 30px 90px rgba(31,41,55,.22);
  transform:translateY(16px) scale(.975);
  opacity:0;
  transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .22s ease;
  display:grid;
  grid-template-columns:42% 1fr;
}
.koharu-route-transition-layer.is-active .koharu-route-transition-card{
  transform:translateY(0) scale(1);
  opacity:1;
}
.koharu-route-transition-cover{
  min-height:220px;
  background:linear-gradient(135deg,#d8bcc1,#b7c8f2);
  background-size:cover;
  background-position:center;
}
.koharu-route-transition-copy{
  padding:24px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
}
.koharu-route-transition-copy small{
  color:#748094;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.koharu-route-transition-copy strong{
  color:#334155;
  font-size:1.35rem;
  line-height:1.35;
}
.koharu-route-transition-copy span{
  width:42px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,#8fb8ff,#f6a7c5);
  animation:koharuTransitionPulse .7s ease-in-out infinite alternate;
}
@keyframes koharuTransitionPulse{from{transform:scaleX(.45);opacity:.5}to{transform:scaleX(1);opacity:1}}
body.astro-koharu-verbatim-home.koharu-route-leaving .post-item-card:not(.is-transition-source){opacity:.72;transition:opacity .2s ease,filter .2s ease;filter:saturate(.88)}
body.astro-koharu-verbatim-home .post-item-card.is-transition-source{z-index:20;box-shadow:0 24px 70px rgba(31,41,55,.20)!important;transform:translateY(-2px)!important;transition:box-shadow .24s ease,transform .24s ease!important}
body.astro-koharu-verbatim-post.koharu-arrived-from-home .koharu-post-cover{animation:koharuPostCoverIn .68s cubic-bezier(.22,1,.36,1) both}
body.astro-koharu-verbatim-post.koharu-arrived-from-home .koharu-post-cover-copy{animation:koharuPostCopyIn .72s .08s cubic-bezier(.22,1,.36,1) both}
body.astro-koharu-verbatim-post.koharu-arrived-from-home .koharu-post-main{animation:koharuPostMainIn .72s .12s cubic-bezier(.22,1,.36,1) both}
body.astro-koharu-verbatim-post.koharu-arrived-from-home #site-header{animation:koharuPostHeaderIn .48s .08s ease both}
@keyframes koharuPostCoverIn{from{opacity:.18;transform:scale(1.025);filter:blur(10px)}to{opacity:1;transform:scale(1);filter:blur(0)}}
@keyframes koharuPostCopyIn{from{opacity:0;transform:translateY(18px);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes koharuPostMainIn{from{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}
@keyframes koharuPostHeaderIn{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}
@media(max-width:720px){
  .koharu-route-transition-card{grid-template-columns:1fr;min-height:0;width:min(440px,calc(100vw - 24px))}
  .koharu-route-transition-cover{min-height:150px}
  .koharu-route-transition-copy{padding:18px}
  .koharu-route-transition-copy strong{font-size:1.08rem}
}
@media(prefers-reduced-motion:reduce){
  .koharu-route-transition-layer,.koharu-route-transition-card{transition:none!important}
  .koharu-route-transition-copy span{animation:none!important}
  body.astro-koharu-verbatim-post.koharu-arrived-from-home .koharu-post-cover,
  body.astro-koharu-verbatim-post.koharu-arrived-from-home .koharu-post-cover-copy,
  body.astro-koharu-verbatim-post.koharu-arrived-from-home .koharu-post-main,
  body.astro-koharu-verbatim-post.koharu-arrived-from-home #site-header{animation:none!important}
}

/* === Koharu PJAX / View Transition polish (v2) === */
@supports (view-transition-name: none){
  body.astro-koharu-verbatim-home .post-item-card{view-transition-name:var(--koharu-post-card-transition,none)}
  body.astro-koharu-verbatim-post .koharu-post-cover{view-transition-name:koharu-post-cover}
  body.astro-koharu-verbatim-post .koharu-post-main{view-transition-name:koharu-post-main}
  ::view-transition-old(root){animation:koharuPjaxOld .24s ease both}
  ::view-transition-new(root){animation:koharuPjaxNew .42s cubic-bezier(.22,1,.36,1) both}
}
@keyframes koharuPjaxOld{from{opacity:1;filter:blur(0)}to{opacity:.55;filter:blur(5px)}}
@keyframes koharuPjaxNew{from{opacity:0;transform:translateY(18px);filter:blur(7px)}to{opacity:1;transform:none;filter:blur(0)}}
body.astro-koharu-verbatim-post.koharu-arrived-from-home .koharu-post-cover{will-change:transform,filter,opacity}
body.astro-koharu-verbatim-post.koharu-arrived-from-home .koharu-post-main{will-change:transform,opacity}

/* === Koharu home theme toggle click fix/polish (v1) === */
body.astro-koharu-verbatim-home .koharu-theme-toggle,
body.astro-koharu-verbatim-home .koharu-theme-toggle *{
  pointer-events:auto!important;
}
body.astro-koharu-verbatim-home .koharu-theme-toggle input{
  pointer-events:none!important;
}
html.dark body.astro-koharu-verbatim-home .theme-toggle .toggle{
  background:rgba(15,23,42,.54)!important;
  border-color:rgba(226,232,240,.26)!important;
}
html.dark body.astro-koharu-verbatim-home .theme-toggle .toggle-indicator{
  left:1.58rem!important;
  background:#c4b5fd!important;
  box-shadow:0 0 14px rgba(196,181,253,.55)!important;
}
