.pv-local{position:fixed;inset:0;z-index:9740;background:var(--bg,#101820);color:var(--text,#f6f2e8);display:flex;flex-direction:column;padding-top:env(safe-area-inset-top)}
.pv-local-head{display:flex;gap:12px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border2,#52606c)}
.pv-local-head h2{font-size:20px;margin:0;flex:1}.pv-local-body{padding:16px;overflow:auto;flex:1}.pv-local p{line-height:1.5}.pv-local .pv-local-status{white-space:pre-wrap;min-height:1.5em;padding:8px 0}.pv-local-row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0;align-items:center}
.pv-local button,.pv-local select{min-height:44px}.pv-local button:disabled{opacity:.45}.pv-local button:focus-visible,.pv-local input:focus-visible,.pv-local select:focus-visible{outline:3px solid var(--accent,#e6a817);outline-offset:2px}
.pv-local-stage{position:relative;max-width:800px;width:100%;margin:24px auto;touch-action:none;background:#000}.pv-local-stage img{display:block;width:100%;height:auto;pointer-events:none}.pv-local-stage svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.pv-local-stage polygon{fill:#e6a81722;stroke:#e6a817;stroke-width:.004}.pv-local-stage polygon.active{fill:#e6a81744;stroke:#fff}
.pv-local-handle{position:absolute;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;border:2px solid #fff;background:#b47a0b;color:#fff;touch-action:none;z-index:2;font-weight:bold;cursor:grab}
.pv-local-preview{max-width:100%;max-height:60vh;object-fit:contain;display:block;margin:12px auto}.pv-local-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.pv-local-tile{border:1px solid var(--border2,#52606c);border-radius:12px;padding:8px}.pv-local-tile img{width:100%;height:140px;object-fit:contain}.pv-local-tile input[type=checkbox]{width:24px;height:24px}.pv-local label{display:flex;gap:8px;align-items:center}.pv-local input:not([type=checkbox]){min-height:44px;max-width:100%;padding:6px;background:var(--raised,#24313b);color:inherit;border:1px solid var(--border2,#52606c);border-radius:6px;box-sizing:border-box}
.pv-local-table-wrap{overflow:auto;max-height:60vh;border:1px solid var(--border2,#52606c)}.pv-local table{border-collapse:collapse}.pv-local td,.pv-local th{border:1px solid var(--border2,#52606c);padding:4px;min-width:140px}.pv-local td input{width:100%}.pv-local td.changed,.pv-local th.changed{background:#875e1538}.pv-local .invalid{outline:2px solid #e76060}.pv-local small{display:block;color:var(--muted,#b8c5cd)}
.pv-local [hidden]{display:none!important}
.pv-local-tile{min-width:0;overflow-wrap:anywhere}.pv-local-tile label{min-height:44px;min-width:44px}.pv-local-tile label span{min-width:0;overflow-wrap:anywhere}.pv-local-tile input[type=checkbox]{flex-shrink:0}.pv-local select{max-width:100%;min-width:0}.pv-local-row>*{min-width:0}.pv-local-tile button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.pv-local textarea{width:100%;min-height:44px;box-sizing:border-box;resize:vertical;background:var(--raised,#24313b);color:inherit;border:1px solid var(--border2,#52606c);border-radius:6px;padding:6px}.pv-local textarea:focus-visible{outline:3px solid var(--accent,#e6a817)}.pv-local pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:30vh;overflow:auto}.pv-local .pv-local-row label{flex-wrap:wrap}
