@import"https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600&family=Barlow+Condensed:wght@600;700&display=swap";:root{font-family:Barlow,Arial,sans-serif;color:#e7e4df;background:#151515;color-scheme:dark;font-synthesis:none;--muted:#a4a19c;--line:#393735;--accent:#e04736}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;color:inherit;background:none;border:0}button:disabled{opacity:.4;cursor:default}button:not(:disabled):hover{color:#fff}button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,.movable:focus-visible{outline:2px solid var(--accent);outline-offset:3px}h1,h2,p{margin:0}.app{max-width:1600px;margin:0 auto;padding:0 40px}header{height:100px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line)}header img{width:40px;height:40px;object-fit:contain}h1{font-size:23px;font-weight:500;letter-spacing:-.7px}main{display:grid;grid-template-columns:210px minmax(0,1fr) 220px;gap:32px;padding:32px 0 60px}.controls{display:flex;flex-direction:column;gap:20px;min-width:0}.upload{height:155px;border:1px dashed #494642;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;font-size:12px;background:#1b1b1a}.upload img{width:100%;height:100%;object-fit:contain}.upload:has(img)>span{position:absolute;bottom:0;inset-inline:0;background:#151515e8;padding:9px}.upload .plus{font-size:28px;color:var(--muted);margin-bottom:7px;font-weight:400}.upload.drag-over{background:#30211f;border-color:var(--accent)}.field{display:flex;flex-direction:column;gap:8px;font-size:12px}.field>input,.field select,.hero-picker>summary,.hero-menu>input{border:1px solid var(--line);background:#20201f;border-radius:0;color:#e0dcd6;padding:10px 11px;font-size:12px;min-height:38px;width:100%}.hero-picker{position:relative}.hero-picker>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.hero-picker>summary::-webkit-details-marker{display:none}.hero-menu{position:absolute;top:calc(100% + 6px);left:0;width:270px;padding:12px;background:#20201f;border:1px solid #514c47;border-radius:0;box-shadow:0 12px 30px #0006;z-index:5}.hero-menu>input{background:#151515}.selection-actions{display:flex;gap:16px;padding:10px 0}.selection-actions button{padding:3px 0;font-size:11px;color:var(--accent)}.hero-list{max-height:270px;overflow-y:auto;overscroll-behavior:contain}.hero-list label{display:flex;align-items:center;gap:9px;padding:7px 3px;font-size:12px;cursor:pointer}.hero-list label:hover{background:#2d2b29}.hero-list input{accent-color:var(--accent)}.primary,.save{background:#b92e23;border:1px solid #cb3c2e;color:#fff;border-radius:0;min-height:39px;padding:10px 20px;font-size:12px;font-weight:500}.primary:not(:disabled):hover,.save:not(:disabled):hover{background:#d23a2b}.primary{margin-top:4px}.preview{min-width:0}.preview-header{display:flex;align-items:center;justify-content:space-between;height:29px;margin-bottom:12px}.preview-header h2{font-size:12px;font-weight:400}.preview-header button{font-size:11px;color:var(--muted);padding:5px 0}.game-shell{padding:0 18px 18px;background:#182028;border:1px solid #393735}.game-title{height:50px;display:flex;align-items:center;border-bottom:1px solid #323d44;font-size:11px;letter-spacing:2px;color:#9ba6ad;margin-bottom:16px}.game-page{position:relative;width:100%;aspect-ratio:1036 / 693;background:#182028}.empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#87959c;font-size:12px}.movable{position:absolute;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;outline:1px solid #b0bbac66}.movable:active{cursor:grabbing}.layout-crop{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.layout-crop img{position:absolute;max-width:none;height:auto;pointer-events:none}.preview-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;min-height:40px}.save{min-width:95px}.muted{font-size:11px;line-height:1.65;color:var(--muted)}.error{font-size:11px;line-height:1.7;color:#f2a08c;overflow-wrap:anywhere}.error button{padding:0;text-decoration:underline}.saved{margin-top:8px;color:#c6c1b7;font-size:11px}.loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#182028e8;color:#d9dfd6;font-size:12px}.faq{padding-top:41px;min-width:0}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{position:relative;cursor:pointer;list-style:none;font-size:12px;line-height:1.6;padding:16px 22px 16px 0}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:2px;top:16px;color:var(--muted);font-size:15px}.faq details[open]>summary:after{content:"−"}.answer{padding-bottom:18px;color:var(--muted);font-size:11px;line-height:1.85}.answer code{font:inherit;color:#d0c9bf;overflow-wrap:anywhere}.merge-file{display:block;position:relative;margin-top:15px;border:1px dashed #4a4540;padding:8px;line-height:1.6;font-size:10px;cursor:pointer;overflow-wrap:anywhere}.merge-file input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;cursor:pointer}.merge-file:focus-within{outline:2px solid var(--accent)}.remove{padding:6px 0 0;color:var(--muted);font-size:10px;text-decoration:underline}.sr-only{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}.preview-actions,.view-switch,.save-actions{display:flex;align-items:center;gap:14px}.preview-actions{gap:22px}.view-switch button{border-bottom:1px solid transparent;padding:5px 0}.view-switch button[aria-pressed=true]{color:#ece6dc;border-color:var(--accent)}.image-preview{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain}.image-view,.image-view .game-page{background:#1a1918}.preview-info{display:flex;flex-direction:column;gap:5px}.portrait-count{font-size:11px;color:#ccc5bb;font-variant-numeric:tabular-nums}.save-actions{gap:8px;flex-shrink:0}.save-image{border:1px solid #4a4540;border-radius:0;min-height:39px;padding:10px 14px;font-size:12px}.save-image:not(:disabled):hover{background:#2d2b29}@media(max-width:650px){.preview-footer{flex-wrap:wrap}.preview-footer .save-actions{margin-left:auto}.preview-info .muted{font-size:10px}.save-actions .save{min-width:68px}.save-image{padding-inline:10px}}.credits{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--line);padding:18px 0 24px;color:var(--muted);font-family:Consolas,Courier New,monospace;font-size:10px;letter-spacing:.3px}.credits a{color:#d6cdbf;text-decoration:none}.credits a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.credits a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.palette-strip{height:15px;display:flex;overflow:hidden;border:1px solid #514b43;background:#20201f}.palette-strip>span{flex:1;min-width:0;height:100%}.palette-caption,.palette-retry{font-family:Barlow,Arial,sans-serif;font-size:10px;font-weight:400;text-transform:none;letter-spacing:normal;color:var(--muted)}.palette-caption{margin-top:-3px}.palette-retry{text-align:left;padding:0;text-decoration:underline;text-underline-offset:3px}header{gap:16px;position:relative}header:after{content:"";position:absolute;bottom:-1px;left:0;width:48px;height:2px;background:var(--accent)}.kanna-emblem{width:58px;height:58px;display:grid;place-items:center;position:relative;flex-shrink:0;color:#ddd4c3}.bureau-seal{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;stroke:currentColor;stroke-width:.8}.bureau-seal circle:first-child{stroke-width:1.5}.seal-base{fill:currentColor;stroke:none}header .kanna-emblem img{width:29px;height:29px;object-fit:contain;filter:grayscale(1) sepia(.25) brightness(1.4) contrast(1.2);image-rendering:pixelated;position:relative}header h1{font-family:Barlow Condensed,Arial Narrow,sans-serif;font-size:48px;font-weight:700;text-transform:uppercase;letter-spacing:5px;line-height:1;color:#eee9df}.field{font-weight:500;font-size:12px;letter-spacing:.2px}.field>input,.field select,.hero-picker>summary,.hero-menu>input{font-weight:400;letter-spacing:normal}input::placeholder{color:#93908a;opacity:1}.preview-header h2{font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:1.6px}.primary,.save{font-weight:600;letter-spacing:1.2px;text-transform:uppercase;font-size:11px}.save-image{font-weight:500;letter-spacing:.2px}.portrait-count{font-family:Consolas,Courier New,monospace;font-size:10px;letter-spacing:.15px}.faq summary{font-weight:500;font-size:13px}.faq summary:after{color:var(--accent)}.upload{border-style:solid}.upload:not(:disabled):hover{border-color:#75685d}.hero-menu{box-shadow:0 12px 30px #0008}.selection-actions button{font-weight:500}header{border-bottom:1px solid #59534b}header:after{width:88px;height:3px;background:#c43126}.field{font-family:Consolas,Courier New,monospace;font-size:10px;text-transform:uppercase;letter-spacing:1.2px}.field>input,.field select,.hero-picker{font-family:Barlow,Arial,sans-serif;text-transform:none;letter-spacing:normal}.field>input,.field select,.hero-picker>summary{border-color:#3c3935;border-bottom-color:#71695e;background:#1c1b19}.field>input:focus,.field select:focus{border-bottom-color:var(--accent)}.preview-header h2{font-family:Barlow Condensed,Arial Narrow,sans-serif;font-size:17px;font-weight:600;letter-spacing:2px}.upload{background:#191816;border-color:#514b43}.upload .plus{color:#c84838;font-weight:500}.game-shell{position:relative;border-color:#514b43;background:#1c1c1a}.game-shell:before,.game-shell:after{content:"";position:absolute;pointer-events:none;width:16px;height:16px;border:solid #bf3b2f;z-index:1}.game-shell:before{left:-1px;top:-1px;border-width:2px 0 0 2px}.game-shell:after{right:-1px;bottom:-1px;border-width:0 2px 2px 0}.game-title{color:#bbb4a7;border-color:#48433c;font-family:Consolas,Courier New,monospace;font-size:10px;letter-spacing:2px}.image-view .game-title{border-color:transparent}.image-view{background:#1a1918}.primary,.save{font-family:Barlow Condensed,Arial Narrow,sans-serif;font-size:15px;letter-spacing:1.8px;background:#b5271e;border-color:#d04432}.primary:not(:disabled):hover,.save:not(:disabled):hover{background:#d33628}.faq summary{font-weight:600}.faq details[open]>summary{color:#eee5d5}.faq details{border-top-color:#514b43}.view-switch button[aria-pressed=true]{border-bottom-width:2px}.save-image{border-color:#70665a;color:#dbd1c0}::selection{background:#b5271e;color:#fff}@media(max-width:650px){.kanna-emblem{width:46px;height:46px}header .kanna-emblem img{width:23px;height:23px}header h1{font-size:38px;letter-spacing:3.5px}}@media(min-width:1500px){main{grid-template-columns:230px minmax(0,1fr) 230px;gap:36px}}@media(max-width:1100px){.app{padding:0 28px}main{grid-template-columns:195px minmax(0,1fr);gap:28px}.faq{grid-column:2;padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:20px}.faq details:last-child{border-bottom:0}.game-shell{padding:0 12px 12px}}@media(max-width:650px){.app{padding:0 20px}header{height:78px}header img{width:34px;height:34px}h1{font-size:21px}main{display:flex;flex-direction:column;gap:25px;padding-top:24px}.controls{display:grid;grid-template-columns:1fr 1fr;gap:16px}.upload{grid-column:1/-1;height:140px}.controls>.primary{grid-column:1/-1}.controls>.muted,.controls>.error{grid-column:1/-1}.hero-menu{width:min(270px,calc(100vw - 40px))}.preview-header{margin-bottom:8px}.game-title{height:40px;margin-bottom:10px}.preview-footer>.muted{font-size:10px}.faq{display:block;padding-top:0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{padding-block:15px}.save{min-width:85px}.hero-list{max-height:200px}}
