*{box-sizing:border-box}
body.dki-body{margin:0;background:#f4f4f0;color:#30332f;font:14px/1.6 system-ui,-apple-system,"Segoe UI","Malgun Gothic",sans-serif;word-break:keep-all}
.dki-body a{color:inherit;text-decoration:none}.dki-body button,.dki-body input,.dki-body select{font:inherit}.dki-body button{cursor:pointer}
.dki-body [hidden]{display:none!important}
.dki-body :is(button,input,select,a):focus-visible{outline:2px solid #91755a;outline-offset:2px}
.dki-skip{position:absolute;top:-60px;left:10px;padding:10px;background:white;z-index:220}.dki-skip:focus{top:8px}
.dki-wrap{width:min(1160px,calc(100% - 40px));margin:0 auto;padding:26px 0 64px;min-width:0}
.dki-crumb{font-size:12px;color:#7d8077;display:flex;gap:10px;margin-bottom:18px}.dki-crumb a{text-decoration:underline}
.dki-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding-bottom:20px;margin-bottom:18px;border-bottom:1px solid #ddd9d0}
.dki-hero p{margin:0 0 4px;font-size:12px;font-weight:800;color:#976d4c}.dki-hero h1{font-size:clamp(25px,3vw,32px);letter-spacing:-.05em;line-height:1.25;margin:0 0 8px}
.dki-hero span{font-size:13px;color:#71756e}.dki-hero>strong{font-size:18px;color:#5e635c;white-space:nowrap;font-variant-numeric:tabular-nums}
.dki-tools{border:1px solid #ddd8cf;border-radius:11px;background:#fbfaf7;padding:16px;display:grid;grid-template-columns:minmax(200px,2fr) repeat(4,minmax(125px,1fr));gap:12px}
.dki-tools label{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:12px;font-weight:800;color:#555c55}
.dki-tools input,.dki-tools select{width:100%;min-width:0;min-height:41px;padding:9px 11px;border:1px solid #cac7bd;border-radius:7px;color:#333a34;background:white;font-size:13px;font-weight:500}
.dki-results{display:flex;justify-content:space-between;align-items:center;margin:16px 0 12px;gap:12px}.dki-results strong{font-size:13px}
.dki-results button{border:0;background:transparent;color:#6e6e65;font-size:12px;text-decoration:underline}
.dki-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.dki-card{--dki-rarity:#8a8f8a;--dki-rarity-soft:#eef0ed;min-width:0;display:grid;grid-template-columns:64px minmax(0,1fr);grid-template-rows:1fr auto;gap:0 14px;border:1px solid #dddcd5;border-top:4px solid var(--dki-rarity);background:#fff;border-radius:11px;padding:14px;min-height:174px}
.dki-rarity-rare{--dki-rarity:#367fc0;--dki-rarity-soft:#eaf4ff}.dki-rarity-heroic{--dki-rarity:#8c55b8;--dki-rarity-soft:#f4ecfb}.dki-rarity-legendary{--dki-rarity:#c17b17;--dki-rarity-soft:#fff3da}
.dki-card:hover{border-color:var(--dki-rarity);box-shadow:0 8px 24px #2d322b0c}.dki-card-main{min-width:0}.dki-category{display:block;color:#777b73;font-size:11px;font-weight:800}
.dki-card-visual{position:relative;align-self:start;display:grid;place-items:center;width:64px;height:76px;border:1px solid color-mix(in srgb,var(--dki-rarity) 34%,#ddd);border-radius:10px;background:linear-gradient(145deg,#fff,var(--dki-rarity-soft));color:var(--dki-rarity)}
.dki-equipment-icon{display:grid;place-items:center;width:44px;height:44px}.dki-equipment-icon svg{width:100%;height:100%;overflow:visible}.dki-equipment-icon .shape{fill:currentColor}.dki-equipment-icon .ring{fill-rule:evenodd}.dki-equipment-icon .cutout{fill:var(--dki-rarity-soft)}.dki-equipment-icon .detail{fill:none;stroke:var(--dki-rarity-soft);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.dki-card-visual em{position:absolute;right:4px;bottom:4px;max-width:52px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:1px 5px;border-radius:999px;background:#fffddf;color:#575c55;font-size:9px;font-style:normal;font-weight:800}
.dki-rarity-label{position:absolute;top:4px;left:5px;color:var(--dki-rarity);font-size:9px;font-weight:900}
.dki-card h2{font-size:16px;letter-spacing:-.035em;line-height:1.4;margin:5px 0 7px;overflow-wrap:anywhere}
.dki-card-glance{display:flex;flex-wrap:wrap;gap:4px 8px;margin:0 0 5px;color:#666c65;font-size:10px;font-variant-numeric:tabular-nums}.dki-card-glance b{color:#343a34;font-weight:850}
.dki-card small{color:#898a81;font-size:11px}
.dki-card-actions{display:flex;align-items:center;gap:9px;margin-top:13px;padding-top:12px;border-top:1px solid #f0eee9}
.dki-card-actions{grid-column:1/-1}
.dki-card-actions button{min-height:34px;padding:6px 10px;border:1px solid #d4d1c8;border-radius:7px;background:#faf9f6;color:#4c544b;font-size:12px;font-weight:750}
.dki-card-actions button:first-child{background:#454a42;color:white;border-color:#454a42}
.dki-card-actions button[aria-pressed="true"]{background:#ece5d8;border-color:#b39f86;color:#504333}
.dki-empty{font-size:13px;color:#666;text-align:center;padding:24px}
.dki-compare{margin:16px 0;padding:17px;border:1px solid #cfc5b7;border-radius:11px;background:#f6f2eb}
.dki-compare-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.dki-compare-head h2{margin:0 0 10px;font-size:16px}.dki-compare-head button{border:0;background:none;text-decoration:underline;color:#666;font-size:12px}
.dki-compare-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dki-compare-entry{min-width:0;display:flex;flex-direction:column;gap:5px;padding:13px;border:1px solid #e1dcd2;border-radius:8px;background:#fff}
.dki-compare-entry strong{font-size:14px;overflow-wrap:anywhere}.dki-compare-entry span,.dki-compare-entry small{color:#6a6e67;font-size:12px}
.dki-dim{position:fixed;inset:0;background:#1317137a;z-index:200}.dki-drawer{position:fixed;right:0;top:0;bottom:0;z-index:201;width:min(440px,100vw);padding:25px 26px;background:#fdfcf9;box-shadow:-14px 0 45px #15181230;overflow-y:auto;overscroll-behavior:auto}
.dki-drawer-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:15px;border-bottom:1px solid #e7e3dc}
.dki-drawer-top small{font-size:12px;color:#86735c;font-weight:800}.dki-drawer-top button{border:0;background:transparent;color:#555;min-height:38px;font-size:13px;font-weight:800}
.dki-drawer h2{font-size:23px;letter-spacing:-.05em;margin:22px 0 2px;line-height:1.4}
.dki-drawer-kind{margin:0 0 22px;color:#766c60}.dki-fields{border-top:1px solid #e7e3dc;margin:0;display:grid}
.dki-fields>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e7e3dc;padding:12px 0}
.dki-fields dt{color:#696b64}.dki-fields dd{font-weight:800;margin:0;text-align:right}
.dki-drawer-note{margin:20px 0 12px;color:#777971;font-size:12px;line-height:1.7}.dki-drawer-compare{border:1px solid #4c5149;border-radius:8px;background:#4c5149;color:white;min-height:42px;padding:8px 14px;font-weight:750}
.dki-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;padding:20px;color:#73776f;border-top:1px solid #ddd9d0;font-size:12px}
@media(max-width:960px){.dki-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dki-tools{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.dki-wrap{width:calc(100% - 28px);padding-top:16px}.dki-hero{align-items:flex-start}.dki-tools{gap:10px;padding:12px;grid-template-columns:1fr 1fr}.dki-tools label:first-child{grid-column:span 2}.dki-grid{grid-template-columns:1fr;gap:10px}.dki-card{min-height:150px;padding:13px}.dki-card-actions{margin-top:10px}.dki-drawer{padding:19px 17px;width:100vw}.dki-compare-cols{grid-template-columns:1fr}}

/* Crafting calculator inside the existing overlay. */
.dki-crafting{margin:22px 0 18px;padding:15px;border:1px solid #dfd8cb;border-radius:10px;background:#f9f7f2}
.dki-crafting-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}
.dki-crafting-head h3{margin:0;font-size:16px;letter-spacing:-.025em}
.dki-crafting-head label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:750;color:#676b62}
.dki-crafting-head input{width:68px;min-height:37px;padding:5px 7px;border:1px solid #c6c1b5;border-radius:6px;background:#fff;color:#242c25;text-align:center;font-variant-numeric:tabular-nums}
.dki-craft-fee{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 0;border-top:1px solid #e7e1d7;border-bottom:1px solid #e7e1d7;font-size:13px}
.dki-craft-fee strong{font-size:16px;color:#41493f;font-variant-numeric:tabular-nums}
.dki-materials{display:grid;gap:0}
.dki-material{display:grid;grid-template-columns:minmax(0,1fr) 77px;gap:7px 10px;align-items:center;padding:12px 0;border-bottom:1px solid #e8e3dc}
.dki-material-info{min-width:0;display:flex;flex-direction:column;gap:2px}
.dki-material-info strong{font-size:13px;line-height:1.45;overflow-wrap:anywhere;font-weight:760}
.dki-material-info span{font-size:12px;color:#747a70}
.dki-material-have{display:flex;flex-direction:column;gap:2px;color:#77796f;font-size:11px}
.dki-material-have input{box-sizing:border-box;width:100%;min-height:35px;padding:5px;border:1px solid #c9c4b9;border-radius:6px;background:#fff;color:#293128;text-align:right;font-size:13px;font-variant-numeric:tabular-nums}
.dki-material-missing{grid-column:1/-1;text-align:right;font-size:12px;color:#956c43;font-weight:760;font-variant-numeric:tabular-nums}
.dki-material-missing.is-complete{color:#4c7255}
.dki-inventory-tip{display:block;color:#7b7c73;font-size:11px;line-height:1.6;margin-top:12px}
@media(max-width:600px){.dki-crafting{padding:12px}.dki-material{grid-template-columns:minmax(0,1fr) 73px}}

/* Verified treasure acquisition paths */
.dki-acquisitions{margin:20px 0 22px;padding:14px;border:1px solid #dedbd2;border-radius:10px;background:#fff}
.dki-acquisitions h3{font-size:16px;margin:0 0 12px;font-weight:800}
.dki-source-heading{display:block;margin-bottom:8px;font-size:13px}
.dki-source-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 8px;padding:9px 0;border-bottom:1px solid #edebe5}
.dki-source-row strong{font-size:12px}
.dki-source-row span{grid-column:1;font-size:11px;color:#74756c}
.dki-source-row em{grid-row:1/span 2;grid-column:2;align-self:center;font-style:normal;color:#765938;font-size:11px;font-weight:750}
.dki-source-row:hover strong{text-decoration:underline}
.dki-source-all{display:inline-block;margin-top:12px;color:#765938;font-weight:750;font-size:12px;text-decoration:underline!important}
.dki-material-info .dki-material-source{display:inline-block;color:#765938;font-size:11px;text-decoration:underline;margin-top:3px}

/* Persist selected crafting quantities without changing inventory entries. */
.dki-target-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.dki-target-actions button{min-height:40px;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:750;cursor:pointer}
.dki-target-actions [data-dki-target-save]{flex:1;background:#464c43;border:1px solid #464c43;color:white}
.dki-target-actions [data-dki-target-remove]{background:#fff;border:1px solid #c5bdaf;color:#765947}
.dki-target-state{margin:8px 0 0;font-size:12px;color:#5b715e}
