*{box-sizing:border-box}body{margin:0;font:15px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:#f3efea;color:#1a1414}
:root{--ac:#b0123f;--d:#0d0a0a}
.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(100% 100% at 90% 0,#5a0a22,#0d0a0a 60%)}
.login form{background:#fff;padding:2.2rem 1.8rem;width:min(400px,100%);border-radius:6px;text-align:center}.lg{width:64px;height:64px;margin:0 auto 1rem;display:grid;place-items:center;background:var(--d);color:#d6b878;font:italic 600 1.8rem Georgia,serif}
.login h1{font:500 1.7rem Georgia,serif;margin:.2rem 0}.login p{opacity:.7;font-size:.9rem}input,textarea,select{width:100%;padding:.7rem .8rem;border:1px solid #cfc6bd;border-radius:4px;font:inherit;background:#fff;margin-top:.3rem}
.login input{margin:1rem 0}textarea{min-height:90px;resize:vertical}.b{background:var(--ac);color:#fff;border:0;padding:.8rem 1.3rem;border-radius:4px;font:600 .9rem system-ui;cursor:pointer}.b:hover{filter:brightness(1.1)}.b.g{background:#fff;color:#222;border:1px solid #cfc6bd}.b.r{background:#fff;color:#b00020;border:1px solid #e3b5bd}.b.s{padding:.45rem .8rem;font-size:.8rem}.b:disabled{opacity:.5;cursor:default}
.login .b{width:100%}.err{color:#b00020;margin-top:.8rem;min-height:1.2em;font-size:.9rem}.back{display:inline-block;margin-top:.8rem;color:#555;font-size:.85rem}
.top{position:sticky;top:0;z-index:20;background:var(--d);color:#fff;display:flex;align-items:center;gap:.8rem;padding:.6rem 1rem;flex-wrap:wrap}.top h1{font:500 1.15rem Georgia,serif;margin:0;flex:1}.top a{color:#d6b878;font-size:.85rem;text-decoration:none}.dirty{color:#f4b942;font-size:.8rem}
.tabs{display:flex;gap:2px;overflow-x:auto;background:#e6dfd7;padding:0 .6rem;position:sticky;top:52px;z-index:19}.tabs button{border:0;background:none;padding:.85rem 1rem;font:600 .85rem system-ui;cursor:pointer;white-space:nowrap;color:#5a4f4a;border-bottom:3px solid transparent}.tabs button.on{color:var(--ac);border-color:var(--ac);background:#f3efea}
.pane{max-width:900px;margin:0 auto;padding:1.2rem 1rem 6rem}.card{background:#fff;border:1px solid #e0d8cf;border-radius:6px;padding:1.2rem;margin-bottom:1rem}.card h2{margin:0 0 .8rem;font:600 1.05rem system-ui}.card h3{margin:1rem 0 .3rem;font-size:.95rem}
label{display:block;font-weight:600;font-size:.82rem;margin-top:.8rem;color:#4a3f3a}label small{font-weight:400;color:#7a6f6a}.row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}@media(max-width:600px){.row{grid-template-columns:1fr}}
.img{display:flex;gap:.8rem;align-items:center;margin-top:.4rem;flex-wrap:wrap}.img .pv{width:120px;height:80px;border:1px dashed #bbb;background:#f7f4f0 center/cover;border-radius:4px;display:grid;place-items:center;color:#999;font-size:.75rem;text-align:center}
.color{display:flex;gap:.5rem;align-items:center}.color input[type=color]{width:54px;height:42px;padding:2px}.color input[type=text]{flex:1}
.item{border:1px solid #e0d8cf;border-radius:6px;padding:.9rem;margin-bottom:.8rem;background:#fcfaf8}.item .ih{display:flex;gap:.4rem;align-items:center;margin-bottom:.3rem}.item .ih b{flex:1}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.8rem}.gi{border:1px solid #e0d8cf;border-radius:6px;overflow:hidden;background:#fff}.gi .pv{aspect-ratio:1;background:#eee center/cover}.gi .gb{padding:.4rem}.gi input{font-size:.8rem;padding:.4rem}.gi .gs{display:flex;gap:.3rem;margin-top:.3rem}
.vslot{display:grid;gap:.5rem}.pb{height:10px;background:#e8e0d8;border-radius:6px;overflow:hidden}.pb i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--ac),#d6b878);transition:width .2s}.st{font-size:.82rem;color:#665}.ok{color:#1b7a3e;font-weight:600}.no{color:#a05}
.sw{display:flex;gap:1rem;flex-wrap:wrap;margin-top:.4rem}.sw label{display:flex;gap:.4rem;align-items:center;margin:0;font-weight:500}.sw input{width:auto;margin:0}
.bar{position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid #d9d0c7;padding:.6rem 1rem;display:flex;gap:.6rem;align-items:center;justify-content:center}
.toast{position:fixed;left:50%;bottom:76px;transform:translateX(-50%);background:#111;color:#fff;padding:.7rem 1.1rem;border-radius:6px;z-index:40;font-size:.9rem;max-width:90vw}
.hint{font-size:.82rem;color:#7a6f6a;margin:.3rem 0}

.login .lgi{display:block;height:84px;width:auto;margin:0 auto 14px}
