.map-item-marker,.map-item-marker:hover,.map-item-marker:active{position:absolute;transform:translate(-50%,-50%);border:0!important;border-radius:0;padding:0!important;background:transparent!important;color:#fff0cd;display:flex;align-items:center;justify-content:center;box-shadow:none!important;outline:none;min-width:0;min-height:0;z-index:14;cursor:grab;touch-action:none;line-height:1;box-sizing:border-box;overflow:visible;user-select:none}
.map-item-marker:active{cursor:grabbing}.map-item-marker:focus-visible{outline:1px dotted #ffe2a1;outline-offset:3px}.map-item-marker img{width:100%;height:100%;object-fit:contain;border-radius:0;pointer-events:none}.map-item-marker>span{pointer-events:none}.map-item-marker small{position:absolute;bottom:-8%;right:-8%;background:transparent;color:#fff;padding:0;text-shadow:0 1px 3px #000;pointer-events:none}.map-item-marker.mi-hidden,.map-item-marker.mi-empty{opacity:1;filter:none}


/* Native modal is explicitly centered; map and global dialog styles cannot offset it. */
dialog.map-items-dialog{position:fixed;inset:0;margin:auto;width:min(520px,calc(100vw - 32px));height:fit-content;max-width:none;max-height:min(760px,88vh);max-height:min(760px,88dvh);padding:0;box-sizing:border-box;border:1px solid #9c825b70;border-radius:18px;background:#1c2126;color:#ece6d8;overflow:hidden;box-shadow:0 30px 100px #0009;font:14px/1.6 system-ui,sans-serif;text-align:left}
dialog.map-items-dialog[open]{display:flex;flex-direction:column}dialog.map-items-dialog:not([open]){display:none}.map-items-dialog::backdrop{background:#090d13a3;backdrop-filter:blur(3px)}.map-items-dialog *{box-sizing:border-box}.map-items-dialog .mi-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px 0;flex:none}.mi-eyebrow{font-size:11px;letter-spacing:2px;color:#baad96}.map-items-dialog .mi-body{min-height:0;overflow:auto;padding:12px 24px 22px;overscroll-behavior:contain}.mi-hero{display:flex;align-items:center;gap:18px;margin:4px 0 18px}.mi-hero>.bp-art{flex:0 0 80px;width:80px;height:80px;margin:0;border:1px solid #bca36a20;border-radius:16px;background-color:#ffffff03;font-size:42px}.mi-hero-copy{min-width:0}.map-items-dialog h2{font-size:23px;line-height:1.35;color:#f1e7d4;margin:0 0 8px;font-weight:650;overflow-wrap:anywhere;letter-spacing:0}.mi-meta{display:flex;flex-wrap:wrap;gap:5px 12px;font-size:12px;color:#aaa99e}.map-items-dialog p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 12px}.map-items-dialog .mi-effect{font-size:14px;line-height:1.85;color:#e5dfd2}.map-items-dialog .mi-description{font-size:13px;color:#aeb0ad;line-height:1.8}.map-items-dialog button,.map-items-dialog input,.map-items-dialog select{font:inherit;border-radius:8px;box-shadow:none;letter-spacing:0}.map-items-dialog .mi-button{padding:7px 12px;border:1px solid #a997752b;background:#ffffff04;color:#d9d5cc;cursor:pointer;line-height:1.5;white-space:nowrap;font-size:12px;min-height:34px;transform:none}.map-items-dialog .mi-button:hover{background:#ffffff0b;border-color:#bfa97b80}.map-items-dialog .mi-primary{border-color:#b79a64;background:#c4a36a;color:#1c2126;font-weight:650}.map-items-dialog .mi-primary:hover{background:#d3b67e;border-color:#d3b67e}.map-items-dialog .mi-danger{color:#cc9188;border-color:transparent;background:transparent}.map-items-dialog .mi-close{font-size:22px;width:32px;height:32px;min-height:0;line-height:1;padding:0;background:transparent;border-color:transparent;color:#aaa99e}.map-items-dialog button:disabled{opacity:.45;cursor:wait}.map-items-dialog :focus-visible{outline:2px solid #d4b980;outline-offset:3px}.map-items-dialog .mi-footer{display:flex;align-items:center;gap:8px;border-top:1px solid #bca36a22;padding:14px 24px;background:#171c21;flex:none}.mi-visibility{font-size:11px;color:#a6a39a;margin-right:auto;white-space:nowrap}.mi-visibility:before{content:'';display:inline-block;width:6px;height:6px;background:#a6a39a;border-radius:50%;margin-right:7px}.mi-visibility.is-visible{color:#a6c3af}.mi-visibility.is-visible:before{background:#88b196}.mi-hint{font-size:12px;color:#a5a69e}.mi-settings{border-top:1px solid #bca36a20;margin-top:22px;padding-top:12px}.map-items-dialog summary{cursor:pointer;color:#b9ad94;font-size:12px;padding:6px 0;user-select:none}.mi-settings-fields,.mi-grant-fields{display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:12px;margin:12px 0}.mi-field{display:flex;flex-direction:column;gap:5px;min-width:0}.mi-field>span{font-size:11px;color:#a5a69e}.map-items-dialog input,.map-items-dialog select{width:100%;min-width:0;background:#13191f;border:1px solid #ffffff19;color:#e3ded4;padding:8px 10px;font-size:13px;line-height:1.4}.mi-settings-actions,.mi-form-actions{display:flex;justify-content:space-between;gap:8px}.mi-confirm{padding:12px;border:1px solid #b46d6540;border-radius:8px;margin-top:12px;background:#b46d6509}.mi-confirm p{font-size:12px}.mi-confirm .mi-button+.mi-button{margin-left:8px}.mi-story{border:1px solid #c4a66c26;border-radius:9px;padding:6px 12px;margin-top:12px}.mi-story p{padding-top:10px;font-size:13px;line-height:1.9}.mi-status{flex:none;color:#e1bd80;font-size:12px;padding:0 24px;white-space:pre-wrap}.mi-status:empty{display:none}.mi-status:not(:empty){padding-top:10px;padding-bottom:10px;background:#c4a66c0b}.mi-status button{margin-left:10px}.mi-missing{padding:24px}.mi-section-head{display:flex;align-items:center;justify-content:space-between;margin:22px 0 12px}.map-items-dialog h3{margin:0;font-size:13px;font-weight:600;color:#cfc5b3}.mi-empty-state{text-align:center;padding:24px 16px;border:1px dashed #bca36a30;border-radius:12px;background:#ffffff02}.mi-empty-state strong{font-size:14px;font-weight:500;color:#bbb3a4}.mi-empty-state p{font-size:12px;color:#888f8d;margin:8px 0 0}.mi-content-card{padding:12px;border:1px solid #bca36a20;border-radius:11px;background:#ffffff02;margin-top:9px}.mi-content-row{display:flex;align-items:center;gap:12px}.mi-content-row>.bp-art{flex:0 0 44px;width:44px;height:44px;margin:0;font-size:28px}.mi-content-row .bp-bottle{transform:scale(.62) rotate(-10deg)}.mi-content-copy{flex:1;min-width:0}.map-items-dialog h4{font-size:14px;line-height:1.4;font-weight:550;margin:0;overflow-wrap:anywhere}.mi-content-meta{font-size:11px;color:#9b9e97}.mi-content-details{margin:7px 0 0 56px}.mi-content-details .mi-effect{font-size:12px}.mi-grant{padding:16px;border:1px solid #c6a76d55;border-radius:11px;background:#242a2a;margin-top:18px}.mi-grant .mi-form-actions{justify-content:flex-end}.map-items-dialog .mi-grant .mi-hint{margin-bottom:12px}.map-item-marker>.bp-chest{flex:none;width:70%;height:57%;margin-top:14%;border-width:1px;border-radius:3px;pointer-events:none;box-shadow:none}.map-item-marker>.bp-chest:before{left:-1px;right:-1px;top:-22%;height:45%;border-width:1px;border-radius:4px 4px 1px 1px}.map-item-marker>.bp-chest:after{width:15%;height:35%;left:42%;top:22%;border-width:1px}.map-item-marker small{z-index:1}.mi-placement-banner{position:fixed;left:50%;top:80px;transform:translateX(-50%);z-index:10000;display:flex;align-items:center;gap:14px;padding:10px 16px;border:1px solid #b79a6455;border-radius:10px;background:#1c2126;color:#e4d8c2;font-size:13px;box-shadow:0 6px 30px #0007}.mi-placement-banner button{padding:5px 10px;cursor:pointer}.mi-placing{cursor:crosshair!important}
@media(max-width:520px){dialog.map-items-dialog{width:calc(100vw - 20px);max-height:90dvh;border-radius:14px}.map-items-dialog .mi-body{padding:10px 18px 18px}.map-items-dialog .mi-footer{padding:12px 18px}.mi-hero{gap:12px}.map-items-dialog h2{font-size:21px}.mi-hero>.bp-art{flex-basis:64px;width:64px;height:72px}.mi-content-details{margin-left:0}.mi-footer{flex-wrap:wrap}.mi-content-row{gap:8px}}

dialog.map-items-dialog.mi-container-view{width:min(640px,calc(100vw - 24px))}.mi-inventory-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.map-items-dialog .mi-item-cell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;padding:6px;min-width:0;overflow:hidden;background:#ffffff04;border:1px solid #bca36a25;cursor:pointer;color:#ded7ca}.map-items-dialog .mi-item-cell:hover{background:#c4a36a14;border-color:#b79a64}.mi-item-cell>.bp-art{width:100%;height:56px;min-height:0;margin:0;font-size:30px;background:transparent;border:0}.mi-item-cell .bp-bottle{transform:scale(.6) rotate(-10deg)}.mi-item-cell .bp-chest{transform:scale(.6)}.mi-cell-name{display:block;width:100%;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:18px}.mi-cell-count{position:absolute;right:5px;top:2px;font-size:10px;color:#d7bf8c;text-shadow:0 1px 3px #000}.mi-header .mi-button{margin-right:auto}.mi-header .mi-close{margin-right:0}@media(max-width:600px){.mi-inventory-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.mi-item-cell>.bp-art{height:40px}.map-items-dialog .mi-item-cell{padding:3px}.mi-cell-name{font-size:9px}}

.map-item-marker>.bp-chest{width:100%;height:100%;margin:0;border:0;border-radius:0}.mi-lock-panel{padding:20px;border:1px solid #c2a26830;border-radius:12px;background:linear-gradient(145deg,#b88b4210,transparent);text-align:center}.mi-lock-panel p{color:#b7b1a4;font-size:13px}.mi-lock-panel .mi-field{max-width:160px;text-align:left;margin:14px auto}.mi-lock-result{color:#d9bb7d!important;font-weight:600}.mi-lock-settings{padding-top:12px;border-top:1px solid #bca36a20;margin-top:12px}.mi-lock-settings .mi-settings-actions{flex-wrap:wrap}

.mi-check-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:380px;margin:14px auto}.mi-lock-panel .mi-check-fields .mi-field{max-width:none;margin:0}.mi-check-bonuses{text-align:left;max-width:380px;margin:12px auto;border-top:1px solid #bca36a22;border-bottom:1px solid #bca36a22;padding:6px 0}.mi-check-bonuses .mi-field{max-width:none;margin:10px 0}.mi-bonus-check{display:flex;align-items:center;gap:9px;font-size:13px;padding:8px 0}.map-items-dialog .mi-bonus-check input{width:16px;height:16px;accent-color:#c4a36a}.mi-check-bonuses .mi-hint{margin-top:10px}.mi-bonus-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.mi-lock-result{font-size:13px;line-height:1.8}

.map-items-dialog .mi-edit-panel .bp-definition-editor{font:inherit;color:#e9dfca}.map-items-dialog .mi-edit-panel .bp-label{margin:10px 0}.map-items-dialog .mi-edit-panel>button{margin:12px 8px 0 0}.map-items-dialog .mi-edit-panel select option{background:#232e32;color:#eee5d2}

.mi-header-tools{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.map-items-dialog .mi-header-tools .mi-button{margin-right:0}
