:root {
  --ink:#171717;
  --paper:#f7f5ef;
  --card:#fff;
  --yellow:#ffe44d;
  --cyan:#58e9f6;
  --pink:#ff71b8;
  --purple:#856cff;
  --red:#df2d2d;
  --muted:#6b6961;
  --line:#d8d5ca;
}
*{box-sizing:border-box}
html{background:var(--paper);scroll-behavior:smooth}
body{margin:0;color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;background:linear-gradient(90deg,transparent 49.5%,rgba(100,92,210,.035) 50%,transparent 50.5%) 0 0/54px 54px,linear-gradient(transparent 49.5%,rgba(100,92,210,.035) 50%,transparent 50.5%) 0 0/54px 54px,radial-gradient(circle at 12% 6%,rgba(88,233,246,.16),transparent 24rem),radial-gradient(circle at 91% 14%,rgba(255,113,184,.13),transparent 24rem),var(--paper)}
button,input{font:inherit}
.site-header{position:sticky;top:0;z-index:20;border-bottom:2px solid var(--ink);background:rgba(247,245,239,.92);backdrop-filter:blur(12px)}
.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:linear-gradient(90deg,var(--cyan),var(--purple) 45%,var(--pink),var(--yellow));opacity:.85;pointer-events:none}
.header-inner{max-width:1000px;height:66px;margin:auto;padding:0 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{color:var(--ink);font-size:21px;font-weight:950;text-decoration:none;letter-spacing:-.055em}
.brand::after{content:" ✦";color:#16b8c6;font-size:12px;vertical-align:top}
.button{border:0;border-radius:10px;min-height:42px;padding:0 17px;font-weight:800;cursor:pointer;transition:transform .12s,opacity .12s,box-shadow .12s}
.button:hover{transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.55}
.button-dark{border:2px solid var(--ink);background:var(--ink);color:#fff;box-shadow:3px 3px 0 var(--cyan)}.button-dark:hover{box-shadow:3px 3px 0 var(--pink)}
.button-yellow{border:2px solid var(--ink);background:var(--yellow);color:var(--ink)}.button-outline{border:2px solid var(--ink);background:#fff;color:var(--ink)}.button-danger{background:var(--red);color:#fff}.button-wide{width:100%;min-height:48px}
.shell{max-width:1000px;margin:auto;padding:26px 20px 80px}
.hero{position:relative;min-height:190px;display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:22px;padding:27px 30px;overflow:hidden;border:2px solid var(--ink);border-radius:22px;background:rgba(255,255,255,.9);box-shadow:5px 5px 0 var(--ink)}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 9% 86%,rgba(255,228,77,.3),transparent 21%),linear-gradient(115deg,rgba(88,233,246,.2),transparent 42%,rgba(255,113,184,.18));pointer-events:none}
.hero::after{content:"0101  AI  001  ?!  1010";position:absolute;right:20px;bottom:4px;color:rgba(76,62,135,.07);font:900 31px ui-monospace,SFMono-Regular,monospace;letter-spacing:.12em;white-space:nowrap}
.page-heading{position:relative;z-index:2}.eyebrow{margin:0 0 7px;color:#5d51a8;font-size:13px;font-weight:900;letter-spacing:.045em}.page-heading h1{margin:0;font-size:34px;line-height:1.2;letter-spacing:-.055em}
.ai-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:17px}.ai-chips span{padding:5px 9px;border:1.5px solid var(--ink);border-radius:999px;background:#fff;font-size:10px;font-weight:900;box-shadow:1.5px 1.5px 0 var(--ink)}.ai-chips span:nth-child(1){background:var(--cyan)}.ai-chips span:nth-child(3){background:var(--pink)}
.mascot-stage{position:relative;z-index:2;flex:0 0 245px;height:135px}.ai-mascot{position:absolute;right:10px;bottom:-5px;width:112px;height:126px;filter:drop-shadow(4px 4px 0 rgba(23,23,23,.18));transform:rotate(3deg)}
.antenna{position:absolute;left:54px;top:-16px;width:4px;height:23px;background:var(--ink);transform:rotate(8deg)}.antenna i{position:absolute;left:-6px;top:-7px;width:16px;height:16px;border:3px solid var(--ink);border-radius:50%;background:var(--pink)}
.bot-face{position:absolute;inset:7px 4px auto;width:104px;height:69px;border:3px solid var(--ink);border-radius:30px 30px 24px 24px;background:#eefcff}.bot-face::before{content:"";position:absolute;inset:6px;border-radius:20px;background:linear-gradient(135deg,#bcf8ff,#fff 55%,#ffe4f1)}
.eye{position:absolute;z-index:1;top:28px;width:11px;height:15px;border-radius:50%;background:var(--ink)}.eye-left{left:27px}.eye-right{right:27px}.bot-face b{position:absolute;z-index:1;left:44px;top:45px;width:16px;height:7px;border:2px solid var(--ink);border-top:0;border-radius:0 0 10px 10px}
.bot-body{position:absolute;left:20px;top:72px;width:77px;height:49px;display:grid;place-items:center;border:3px solid var(--ink);border-radius:12px 12px 22px 22px;background:var(--yellow);font:950 19px ui-monospace,monospace}
.arm{position:absolute;top:82px;width:35px;height:12px;border:3px solid var(--ink);border-radius:999px;background:var(--cyan)}.arm-left{left:-7px;transform:rotate(-31deg)}.arm-right{right:-10px;transform:rotate(-38deg);transform-origin:left center}
.speech{position:absolute;right:121px;top:5px;padding:9px 12px;border:2px solid var(--ink);border-radius:14px 14px 3px 14px;background:#fff;font-size:12px;font-weight:900;line-height:1.35;transform:rotate(-4deg)}
.spark{position:absolute;color:#7159fa;font-weight:900}.spark-one{right:4px;top:0;font-size:24px}.spark-two{left:35px;bottom:0;color:#ff4c9e;font-size:20px}
.ai-ticker{display:flex;align-items:center;justify-content:center;gap:14px;margin:-5px 0 20px;padding:8px 12px;overflow:hidden;border:2px solid var(--ink);border-radius:999px;background:var(--ink);color:#fff;font:800 10px ui-monospace,SFMono-Regular,monospace;letter-spacing:.08em;white-space:nowrap;box-shadow:3px 3px 0 var(--cyan)}
.ai-ticker i{color:var(--yellow);font-style:normal;font-size:14px}.ai-ticker span:nth-of-type(2){color:var(--cyan)}.ai-ticker span:nth-of-type(3){color:var(--pink)}
.tabs{display:flex;width:max-content;max-width:100%;gap:4px;margin-bottom:26px;padding:4px;overflow:auto;border:2px solid var(--ink);border-radius:13px;background:#fff;box-shadow:2px 2px 0 rgba(23,23,23,.12)}.tab{white-space:nowrap;border:0;border-radius:9px;background:transparent;padding:10px 16px;color:#5e5c56;font-weight:800;cursor:pointer}.tab.active{background:var(--ink);color:#fff}
.status{min-height:100px;display:grid;place-items:center;color:var(--muted);font-weight:700}.status.hidden{display:none}.feed{display:grid;gap:34px}
.manga-card{overflow:hidden;border:2px solid var(--ink);border-radius:18px;background:#fff;box-shadow:4px 4px 0 var(--ink);animation:pop .25s ease-out both}.manga-card:nth-child(3n+1){box-shadow:4px 4px 0 var(--ink),8px 8px 0 rgba(88,233,246,.45)}.manga-card:nth-child(3n+2){box-shadow:4px 4px 0 var(--ink),8px 8px 0 rgba(255,113,184,.32)}
.manga-images{display:grid;gap:1px;background:var(--ink)}.manga-images.two{grid-template-columns:repeat(2,1fr);direction:rtl}.image-wrap{min-height:200px;display:flex;align-items:center;background:#efeee9;direction:ltr}.image-wrap img{display:block;width:100%;max-height:900px;object-fit:contain}
.manga-info{position:relative;padding:21px 20px 20px}.manga-info::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--cyan),var(--purple),var(--pink),var(--yellow))}.manga-title{margin:0;font-size:24px;line-height:1.35;letter-spacing:-.02em}.manga-author{margin:6px 0 0;padding:0;border:0;background:transparent;color:var(--muted);font-size:14px;font-weight:700;cursor:pointer;text-align:left}.manga-author:hover{color:#5141bb;text-decoration:underline}.manga-author span{margin-left:4px;color:#7468bd;font-size:11px}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.pill{border-radius:999px}
.author-filter{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 22px;padding:12px 15px;border:2px solid var(--ink);border-radius:13px;background:linear-gradient(90deg,#dffcff,#fff,#ffe8f3);box-shadow:3px 3px 0 var(--ink)}.author-filter[hidden]{display:none}.author-filter strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.author-filter button{flex:0 0 auto;border:0;background:transparent;color:#5141bb;font-weight:900;cursor:pointer}
.empty{border:2px dashed #aaa69a;border-radius:18px;background:rgba(255,255,255,.75);padding:64px 20px;text-align:center}.empty strong{display:block;font-size:20px}.empty span{display:block;margin-top:8px;color:var(--muted);font-size:14px}
.upload-dialog{width:min(500px,calc(100% - 28px));max-height:90vh;padding:0;border:2px solid var(--ink);border-radius:18px;background:#fffef9;color:var(--ink);box-shadow:8px 8px 0 rgba(0,0,0,.22)}.upload-dialog::backdrop{background:rgba(23,20,35,.58);backdrop-filter:blur(2px)}.upload-form{padding:22px;overflow:auto}.dialog-top{display:flex;align-items:start;justify-content:space-between;gap:16px}.dialog-top h2{margin:0;font-size:23px}.dialog-top p{margin:7px 0 0;color:var(--muted);font-size:14px;line-height:1.5}.icon-button{width:36px;height:36px;border:0;border-radius:50%;background:transparent;font-size:26px;cursor:pointer}
.field-label{display:block;margin:18px 0 7px;font-size:14px;font-weight:900}.field-label span{color:var(--muted);font-weight:500}
.dropzone{min-height:126px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:2px dashed #9993b5;border-radius:13px;background:linear-gradient(135deg,#f5fdff,#fff8fc);cursor:pointer;transition:.15s}.dropzone:hover,.dropzone.is-dragging{border-color:#6650ef;background:linear-gradient(135deg,#dcfbff,#ffe5f2);transform:translateY(-1px)}.dropzone.has-files{min-height:88px;border-color:#6650ef;background:#f8f8ff}
.drop-icon{width:36px;height:36px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:50%;background:var(--yellow);font-size:24px;font-weight:900;line-height:1}.dropzone small{color:var(--muted);font-size:12px;text-align:center}
.file-preview{margin-top:9px}.preview-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;font-size:12px}.preview-heading strong{color:#5141bb}.preview-heading span{color:var(--muted)}.preview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;direction:rtl}.preview-item{position:relative;aspect-ratio:1;overflow:hidden;border:2px solid var(--ink);border-radius:10px;background:#eeece5;direction:ltr}.preview-item img{width:100%;height:100%;display:block;object-fit:cover}.preview-number{position:absolute;left:5px;top:5px;width:24px;height:24px;display:grid;place-items:center;border:1.5px solid var(--ink);border-radius:50%;background:var(--yellow);font-size:11px;font-weight:900}.preview-remove{position:absolute;right:5px;top:5px;width:27px;height:27px;border:1.5px solid var(--ink);border-radius:50%;background:var(--ink);color:#fff;font-size:19px;line-height:1;cursor:pointer}
.text-input{width:100%;height:44px;padding:0 12px;border:2px solid #d0cdc3;border-radius:9px;background:#fff;outline:none;font-size:16px}.text-input:focus{border-color:#6650ef;box-shadow:0 0 0 3px rgba(102,80,239,.12)}.instant-note{margin:9px 0 0;text-align:center;color:var(--muted);font-size:12px}
.toast{position:fixed;z-index:50;left:50%;bottom:22px;transform:translate(-50%,20px);max-width:min(420px,calc(100% - 30px));padding:11px 16px;border-radius:10px;background:var(--ink);color:#fff;font-size:14px;font-weight:700;opacity:0;pointer-events:none;transition:.2s}.toast.show{transform:translate(-50%,0);opacity:1}
.dialog-toast{display:block;width:100%;margin:0;padding:0;border-radius:9px;background:var(--ink);color:#fff;font-size:13px;font-weight:800;text-align:center;max-height:0;overflow:hidden;opacity:0;transition:.18s}.dialog-toast.show{max-height:80px;margin-top:11px;padding:10px 12px;opacity:1}
.admin-shell{max-width:820px}.back-link{display:inline-block;margin-bottom:18px;color:var(--ink);font-weight:800;text-decoration:none}.admin-box{margin-bottom:24px;padding:20px;border:2px solid var(--ink);border-radius:16px;background:#fff;box-shadow:4px 4px 0 var(--ink)}.admin-box h1{margin:0;font-size:26px}.admin-box p{margin:6px 0 0;color:var(--muted);font-size:14px}.admin-list{display:grid;gap:10px}.admin-row{display:grid;grid-template-columns:80px 1fr auto;align-items:center;gap:14px;padding:10px;border:2px solid var(--ink);border-radius:12px;background:#fff}.admin-row img{width:80px;height:80px;border-radius:8px;background:#eee;object-fit:cover}.admin-meta{min-width:0}.admin-meta strong,.admin-meta span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-meta span{margin-top:5px;color:var(--muted);font-size:13px}.danger-icon{width:42px;height:42px;border:0;border-radius:9px;background:var(--red);color:#fff;font-size:18px;cursor:pointer}
@keyframes pop{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(max-width:650px){.header-inner{padding:0 14px}.brand{font-size:18px}.button-dark{padding:0 12px}.shell{padding:18px 14px 65px}.hero{min-height:164px;padding:22px 18px}.page-heading{max-width:65%}.page-heading h1{font-size:27px}.eyebrow{font-size:11px}.ai-chips span:nth-child(2){display:none}.ai-chips{margin-top:12px}.mascot-stage{position:absolute;right:7px;bottom:3px;width:145px;height:130px;transform:scale(.82);transform-origin:right bottom}.speech{display:none}.ai-ticker{justify-content:flex-start;overflow:hidden}.ai-ticker span:nth-of-type(3),.ai-ticker i:last-of-type{display:none}.tabs{width:100%}.tab{flex:1;padding:10px 11px}.manga-images.two{grid-template-columns:1fr;direction:ltr}.manga-title{font-size:21px}.manga-info{padding:19px 16px 16px}.admin-row{grid-template-columns:62px 1fr auto}.admin-row img{width:62px;height:62px}}
@media(max-width:390px){.page-heading{max-width:72%}.page-heading h1{font-size:24px}.ai-chips span{font-size:9px}.mascot-stage{right:-5px;transform:scale(.7)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}.manga-card{animation:none}.button,.dropzone{transition:none}}
