:root{--green:#147a4b;--amber:#a96800;--red:#b4232d;--blue:#135c9d}
*{box-sizing:border-box}
.wrap{max-width:1360px;margin:18px auto;padding:0 16px 34px}.grid{display:grid;grid-template-columns:385px 1fr;gap:16px}
.panel{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:18px;margin-bottom:14px}h2{font-size:18px;margin:0 0 14px}h3{font-size:14px;margin:16px 0 8px}
label{display:block;font-size:12px;font-weight:700;color:#4b5158;margin:10px 0 5px}
select,input[type=text],input[type=file]{width:100%;padding:10px 11px;border:1px solid #ccd1d7;border-radius:9px;background:#fff;font:inherit}
select:disabled{background:#f3f4f5;color:#999}.row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.btn{border:0;border-radius:9px;background:var(--dark);color:#fff;padding:10px 13px;font-weight:700;cursor:pointer}.btn.gold{background:var(--gold);color:#211d08}.btn.light{background:#eceff2;color:#292d31}.btn:disabled{opacity:.45;cursor:not-allowed}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.small{font-size:12px;color:var(--muted);line-height:1.45}
.status{border-radius:11px;padding:11px 12px;margin:11px 0;font-size:13px;border-left:5px solid var(--blue);background:#eef5fb}.status.good{border-color:var(--green);background:#edf8f2}.status.warn{border-color:#dc931a;background:#fff7e8}.status.bad{border-color:var(--red);background:#fff0f1}
.metricGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:12px 0}.metric{background:#f7f8fa;border:1px solid var(--line);border-radius:11px;padding:10px}.metric b{display:block;font-size:20px}.metric span{font-size:11px;color:var(--muted)}
.artCards{display:grid;grid-template-columns:1fr 1fr;gap:10px}.artCard{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fbfbfc}.artCard.active{border-color:#999;background:#fff}.artHead{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.zone{font-weight:800;font-size:13px}.remove{border:0;background:#eceff2;border-radius:7px;padding:5px 7px;cursor:pointer}
.thumbRow{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.thumb{height:105px;border:1px solid var(--line);border-radius:8px;display:grid;place-items:center;background:white;overflow:hidden}.thumb canvas{max-width:100%;max-height:100%}
.methodGroup{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.choice input{display:none}.choice label{margin:0;border:1px solid #cfd4da;border-radius:9px;padding:9px;text-align:center;cursor:pointer;font-size:12px}.choice input:checked+label{background:#333;color:white;border-color:#333}
.addZone{display:grid;grid-template-columns:1fr 1fr;gap:7px}.zoneBtn{border:1px dashed #aeb4bb;background:#fafbfc;border-radius:9px;padding:10px;cursor:pointer;font-size:12px;font-weight:700}.zoneBtn:disabled{opacity:.35;cursor:not-allowed}
table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:9px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:#f6f7f8;font-size:11px;color:#555b62}
.previewWrap{display:grid;grid-template-columns:1fr 1fr;gap:12px}.previewFour{display:grid;grid-template-columns:1fr 1fr;gap:12px}.jacketView{position:relative;min-height:490px;border:1px solid var(--line);border-radius:13px;background:#fff;display:grid;place-items:center;overflow:hidden}.jacketView>svg{width:92%;height:92%;display:block}.jacketView>img{width:94%;height:94%;object-fit:contain;display:block}.viewLabel{position:absolute;top:8px;left:10px;font-size:11px;font-weight:800;background:#f2f3f5;border-radius:999px;padding:5px 8px}
.logoLayer{position:absolute;display:flex;align-items:center;justify-content:center;pointer-events:none;overflow:hidden;z-index:5}
.logoLayer canvas,.logoLayer img{display:block;width:100%;height:100%;object-fit:contain}
.printZoneGuide{position:absolute;pointer-events:none;border:1px dashed rgba(30,95,159,.28);border-radius:4px;box-sizing:border-box;z-index:4}
.badge{display:inline-block;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;background:#eef1f4}.src{word-break:break-all}
.resultStrong{font-weight:800}.ok{color:var(--green)}.limit{color:var(--amber)}
@media(max-width:1000px){.grid{grid-template-columns:1fr}.previewWrap,.previewFour{grid-template-columns:1fr 1fr}.metricGrid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.previewFour{grid-template-columns:1fr}}
@media(max-width:600px){.artCards{grid-template-columns:1fr}}
.module-content.hivis-content{width:min(1360px,calc(100% - 32px));margin:18px auto 34px}
.hivis-content .grid{display:grid;grid-template-columns:385px 1fr;gap:16px}
@media(max-width:1000px){.hivis-content .grid{grid-template-columns:1fr}}
