/* Single-anime site — look of the original jut-su single sites (dark + light themes). */
:root{--p:#9aa777;--p-h:#8b9669;--pc:#363a37;--s:#202020;--a:#212722;--b1:#2e332f;--b2:#b2b5b8;--b3:#e0e7ff;--bc:#ffffff;--bc8:rgb(255 255 255/.8);--line:rgb(255 255 255/.1);--title-b:#666b66;--icon:#727974;--btn-t:#202020;--site:#1f1f1f;color-scheme:dark}
:root[data-theme=light]{--p:#9dc532;--p-h:#8db12d;--pc:#eef5cd;--s:#ffffff;--a:#d9f1a7;--b1:#d9f1a7;--b2:#3f464c;--b3:#e0e7ff;--bc:#3f464c;--bc8:rgb(63 70 76/.8);--line:rgb(63 70 76/.1);--title-b:#b4d225;--icon:#727974;--btn-t:#ffffff;--site:#1f1f1f;color-scheme:light}
*,:before,:after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;line-height:1.5;background:var(--site) no-repeat top center;background-size:100%}
@media(min-width:1024px){html{background-image:linear-gradient(180deg,rgb(31 31 31/.45),#1f1f1f 56rem),var(--site-bg,none)}}
body{margin:0;color:var(--bc);font-family:ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%}
button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;padding:0}
h1,h2{margin:0;font-size:inherit;font-weight:inherit}
.i{width:24px;height:24px;fill:currentColor;flex:none}
.muted{opacity:.7}
.center{text-align:center}

.page{width:100%;max-width:64rem;margin:0 auto}
@media(min-width:1024px){.page{margin-top:4rem;margin-bottom:4rem}}

/* logo */
.logo{display:flex;flex-direction:column;align-items:center;margin:0 auto;max-width:346px;text-align:center;padding-top:8px}
.logo img{display:block;width:100%;height:auto;max-height:116px;margin:0 auto}
.logo-name{font-size:52px;font-weight:900;line-height:1;letter-spacing:.03em;text-transform:uppercase;color:#fff;text-shadow:0 0 2px #9aa777,0 3px 12px rgb(0 0 0/.6)}
.logo-brand{margin-top:4px;color:#fff;font-size:14px;text-shadow:0 1px 4px rgb(0 0 0/.6)}

/* header */
.top{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:1.25rem;padding:1.5rem;filter:drop-shadow(0 4px 4px rgb(0 0 0/.25));background:linear-gradient(180deg,#334633,#1d351d)}
:root[data-theme=light] .top{background:linear-gradient(180deg,#cbe473,#95c361)}
@media(min-width:1024px){.top{padding-left:2rem;padding-right:2rem}}
.circle{display:inline-grid;place-items:center;width:3rem;height:3rem;border-radius:9999px;background:var(--a);color:var(--icon);transition:background .2s}
.circle:hover{background:color-mix(in oklab,var(--a) 90%,black)}
.circle .i{grid-area:1/1}
:root[data-theme=dark] #theme .i:last-child,:root[data-theme=light] #theme .i:first-child{display:none}
.share-top{display:flex;gap:4px}
.search{width:50%}
.search-box{display:flex;align-items:center;gap:.5rem;height:3rem;padding:0 1rem;border-radius:.5rem;border:1px solid rgb(255 255 255/.2);background:var(--b1);color:var(--bc)}
:root[data-theme=light] .search-box{border-color:rgb(63 70 76/.2)}
.search-box:focus-within{outline:2px solid rgb(255 255 255/.2);outline-offset:2px}
.search-box input{flex:1;min-width:0;border:0;background:transparent;outline:0;color:inherit;font:inherit}
.search-box input::placeholder{color:#9ca3af}
.search-box .i{width:16px;height:16px;opacity:.7}
.results{position:absolute;z-index:99999;left:0;right:0;width:100%;margin:1.5rem 0 0;padding:.5rem;list-style:none;font-size:.875rem;background:var(--b1);box-shadow:0 1px 3px rgb(0 0 0/.1);max-height:60vh;overflow:auto}
.results a{display:block;padding:.5rem 1rem;border-radius:.5rem}
.results a:hover,.results a.sel{background:rgb(255 255 255/.1)}
:root[data-theme=light] .results a:hover,:root[data-theme=light] .results a.sel{background:rgb(63 70 76/.1)}
.results li.none{padding:.5rem 1rem;opacity:.7}
.search-toggle{display:none;margin-left:.75rem}
.search-toggle .i:last-child{display:none}
.search-open .search-toggle .i:first-child{display:none}
.search-open .search-toggle .i:last-child{display:block}

/* article */
.box{background:var(--s);padding:3.5rem 1.5rem;box-shadow:0 4px 6px -1px rgb(0 0 0/.1),0 2px 4px -2px rgb(0 0 0/.1)}
.title{position:relative;display:flex;align-items:center;margin-left:1rem;padding:1.25rem 1.25rem 1.25rem 7rem;border-radius:.5rem;border:1px solid var(--title-b);background:var(--pc);font-weight:700;font-size:18px;line-height:21px}
.title img{position:absolute;left:-1rem;top:50%;transform:translateY(-60%);width:100px;height:100px;border-radius:9999px;border:1px solid var(--title-b);object-fit:cover;user-select:none}
.category{flex:none;margin-left:.75rem;padding:.375rem .75rem;border-radius:.5rem;background:var(--s);font-weight:400;font-size:16px}
.title-text{min-width:0}

.part h2,.box>h2{margin:2.5rem 0;font-weight:700;font-size:18px;line-height:21px;text-align:center}
.buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:.75rem}
.btn{display:inline-flex;align-items:center;justify-content:center;height:2.5rem;min-height:2.5rem;min-width:7rem;padding:0 1rem;border-radius:.5rem;border:1px solid var(--b2);background:var(--b2);color:var(--btn-t);font-weight:700;font-size:16px;line-height:1;text-align:center;white-space:nowrap;transition:background .2s,border-color .2s,transform .1s}
.btn:hover{background:var(--b3);border-color:var(--b3);color:#202020}
.btn:active{transform:scale(.95)}
.buttons .btn.seen,.buttons .btn.active,.buttons .btn.last{background:var(--p);border-color:var(--p);color:var(--btn-t)}
.buttons .btn.seen:hover,.buttons .btn.active:hover,.buttons .btn.last:hover{background:var(--p-h);border-color:var(--p-h)}
.divider{height:2px;margin:2rem 0 -.5rem;background:var(--line)}
.continue{text-align:center;margin-top:2rem}
.continue .btn{background:var(--p);border-color:var(--p)}
a:focus-visible,button:focus-visible{outline:2px solid var(--p);outline-offset:2px}

/* description */
.description{margin-top:0;padding:3.5rem 1.5rem;background:var(--pc);border-radius:0 0 .5rem .5rem;box-shadow:0 4px 6px -1px rgb(0 0 0/.1),0 2px 4px -2px rgb(0 0 0/.1)}
@media(min-width:1024px){.description{padding-left:5rem;padding-right:5rem}}
.prose{color:var(--bc8);font-size:1rem;line-height:1.75}
.prose h2{margin:2.5rem 0 1.25rem;color:var(--bc);font-weight:700;font-size:24px;line-height:1.3;text-align:center}
.prose h2:first-child{margin-top:0}
.prose p{margin:1.25em 0}
.prose img{display:block;width:100%;max-width:800px;height:auto;margin:2em auto;border-radius:.5rem}
.prose ol,.prose ul{margin:1.25em 0;padding-left:1.625em}
.prose li{margin:.5em 0;padding-left:.375em}
.prose li p{margin:.75em 0}
.prose li::marker{color:var(--bc8)}
.prose strong{color:var(--bc);font-weight:600}

.ad{display:flex;justify-content:center;max-width:100%}

/* episode */
.players{justify-content:flex-start;padding-top:1.5rem;margin-top:0}
.players .btn{min-width:0}
.player{position:relative;margin-top:1.5rem;padding-top:56.25%}
.player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ep-nav{display:flex;flex-wrap:wrap;margin-top:1.25rem}
.ep-nav .btn{width:100%}
.nav-prev{width:50%;padding-right:.625rem}
.nav-next{width:50%;padding-left:.625rem}
.nav-list{order:9;width:100%;margin-top:1.25rem}
@media(min-width:1024px){.ep-nav{justify-content:space-between}.nav-prev,.nav-next,.nav-list{width:auto;padding:0;margin:0;order:0}}

/* comments */
.c-title{margin:2.5rem 0;font-weight:700;font-size:18px;line-height:21px;text-align:left}
.box>.c-title:first-child{margin-top:0}
.cform{display:flex;flex-direction:column;gap:.75rem}
.field{width:100%;min-height:3rem;padding:.5rem 1rem;border-radius:.5rem;border:1px solid rgb(255 255 255/.2);background:var(--b1);color:var(--bc);font:inherit;font-size:.875rem;line-height:2}
:root[data-theme=light] .field{border-color:rgb(63 70 76/.2)}
.field::placeholder{color:#9ca3af}
.field:focus{outline:2px solid rgb(255 255 255/.2);outline-offset:2px}
textarea.field{resize:vertical}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.cform-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.btn.send{background:var(--p);border-color:var(--p)}
.cerr{color:#f87272;font-size:14px}
.reply-to{font-size:14px}
.linkish{color:var(--p)}
.comment{display:flex;margin-top:1.25rem;width:100%;border-radius:.5rem;font-size:1rem}
.ava{flex:none;display:grid;place-items:center;width:2.75rem;height:2.75rem;margin-right:1.25rem;border-radius:9999px;background:hsl(var(--h) 30% 40%);color:#fff;font-weight:700}
.c-main{width:100%;min-width:0}
.c-head{display:flex;align-items:center;margin-bottom:.5rem}
.c-head b{margin-right:.75rem;color:var(--p);font-size:.875rem;font-weight:700}
.c-head time{color:#9ca3af;font-size:.875rem}
.c-main p{margin:0;word-break:break-all}
.c-act{display:flex;align-items:center;gap:1rem;width:100%;margin-top:1rem}
.c-act button{display:flex;align-items:center;gap:.25rem;font-size:.875rem;color:var(--b2)}
.c-act .i{width:16px;height:16px}
.c-act button:first-child:hover{text-decoration:underline}
.c-act .like.done,.c-act .rep.done{color:#f87272}
.c-act .rep{margin-left:auto}

/* admin */
.card{background:var(--s);padding:2rem 1.5rem}
.admin .adm-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.seg{display:flex;gap:6px;margin:12px 0}
.seg a{padding:6px 14px;border-radius:.5rem;background:var(--b2);color:var(--btn-t);font-size:14px;font-weight:700}
.seg a.on{background:var(--p)}
.adm{width:100%;border-collapse:collapse;font-size:14px}
.adm td,.adm th{padding:10px 8px;border-top:1px solid var(--line);text-align:left;vertical-align:top}
.adm tr.off{opacity:.5}
.adm-act{display:flex;flex-direction:column;gap:6px}
.adm-act button{padding:4px 10px;border-radius:.5rem;background:var(--b2);color:var(--btn-t)}
.adm-act .danger{background:#f87272}
.tag{padding:1px 8px;border-radius:99px;background:#f8727233;color:#f87272;font-size:12px}

.foot{max-width:64rem;margin:.75rem auto 0;padding:.75rem;text-align:center;color:#fff;font-size:1rem}
.foot a{text-decoration:none}
.foot a:hover{text-decoration:underline}

@media(max-width:1023px){
  .search{display:none;position:absolute;left:0;right:0;top:100%;width:auto;padding:.75rem 1.5rem;background:inherit}
  .search-open .search{display:block}
  .search-toggle{display:inline-grid}
  .results{margin-top:.5rem}
  .top{flex-wrap:nowrap}
  .share-top{margin-left:auto}
}
@media(max-width:640px){
  .box{padding:3.5rem 1rem}
  .title{margin-left:.5rem;padding:1.25rem 1rem 1.25rem 6.5rem;font-size:16px}
  .title img{width:84px;height:84px;left:-.5rem}
  .btn{min-width:6rem;font-size:15px}
  .c-act .rep span{display:none}
}
