/* PyCodex Items — uses the same PyRoller/PySpellbook/PyMonsters lookup patterns. */
.item-browser-panel{padding:18px 20px;margin-bottom:20px;}
.item-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.item-basic-search-grid{display:grid;grid-template-columns:minmax(280px,1.4fr) minmax(180px,.75fr) minmax(170px,.65fr) minmax(190px,.75fr);gap:14px;align-items:end;}
.item-advanced-grid{display:grid;grid-template-columns:minmax(260px,1.1fr) repeat(4,minmax(160px,1fr));gap:14px;padding:16px 16px 0;}
.item-filter-blocks{display:grid;grid-template-columns:1fr;gap:14px;padding:16px;}
.item-results-panel{padding:20px;margin-bottom:20px;}
.item-table-head,.item-result-main{display:grid;grid-template-columns:110px minmax(260px,1.7fr) minmax(150px,.85fr) minmax(120px,.65fr) minmax(130px,.7fr) minmax(110px,.65fr);gap:12px;align-items:center;}
.item-table-head{padding:0 14px 8px;color:var(--py-muted);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;}
.item-list{display:grid;gap:10px;}
.item-result-card{border:2px solid var(--line);border-radius:16px;background:var(--py-panel-soft);overflow:hidden;box-shadow:0 1px 3px var(--py-header-shadow);transition:box-shadow .14s ease,border-color .14s ease,transform .14s ease,background .14s ease;}
.item-result-card:hover,.item-result-card.selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--py-hover-ring);}
.item-result-card.selected{background:var(--py-panel-tint);}
.item-result-main{padding:12px 14px;}
.item-category-badge{display:inline-flex;align-items:center;justify-content:center;min-width:74px;border:2px solid var(--py-primary-border-alpha-strong);background:var(--py-primary-glass);color:var(--accent);border-radius:999px;padding:7px 9px;font-weight:900;font-size:12px;}
.item-name-btn{appearance:none;border:0;background:transparent;color:var(--py-text-strong);font:inherit;font-size:18px;line-height:1.15;font-weight:900;text-align:left;padding:0;cursor:pointer;}
.item-name-btn:hover,.item-name-btn:focus-visible{text-decoration:underline;outline:none;color:var(--accent);}
.item-subline{margin-top:5px;color:var(--py-muted);font-size:13px;font-weight:800;display:flex;gap:6px;flex-wrap:wrap;align-items:center;}
.item-inline-pill{display:inline-flex;align-items:center;border:1px solid var(--py-border-soft);background:var(--py-panel);color:var(--py-muted);border-radius:999px;padding:3px 7px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;}
.item-type-cell,.item-rarity-cell,.item-attune-cell,.item-source-cell{font-weight:850;color:var(--py-text);font-size:14px;}
.item-inspection-drawer{position:fixed;top:0;right:0;height:100vh;width:min(480px,94vw);transform:translateX(104%);transition:transform .22s ease;z-index:1000;pointer-events:none;}
.item-inspection-drawer.open{transform:translateX(0);pointer-events:auto;}
.item-inspection-card{height:100%;background:var(--py-panel-glass);border-left:2px solid var(--line);box-shadow:-12px 0 28px var(--py-shadow-panel);display:grid;grid-template-rows:auto 1fr;}
.item-inspection-header{padding:18px;display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:2px solid var(--py-border-faint);background:var(--py-panel-glass);}
.item-inspection-title{font-size:24px;font-weight:900;margin-top:4px;color:var(--py-text-strong);line-height:1.08;}
.item-inspection-body{padding:18px 20px;overflow:auto;line-height:1.6;font-size:15px;background:var(--py-panel-glass);}
.item-detail-card{display:block;color:var(--py-text);}
.item-detail-list{display:block;margin:0 0 16px;}
.item-detail-line{margin:0 0 7px;font-size:15px;line-height:1.42;color:var(--py-text);}
.item-detail-line strong{color:var(--py-text-strong);font-weight:900;}
.item-section{border:0;background:transparent;padding:16px 0 0;margin:16px 0 0;border-top:1px solid var(--py-border-soft);border-radius:0;}
.item-section h3{font-size:12px;font-weight:900;color:var(--py-muted-strong,var(--py-muted));text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px;}
.item-chip-grid{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.item-description{font-size:15px;line-height:1.5;color:var(--py-text);}
.item-description strong{color:var(--py-text-strong);font-weight:900;}
.item-full-description,.item-empty-description{font-size:15px;line-height:1.5;color:var(--py-text);}
.item-table-wrap{margin:10px 0 12px;overflow:auto;}
.item-description-table{width:100%;border-collapse:collapse;font-size:13px;background:var(--py-panel);border:1px solid var(--py-border-soft);}
.item-description-table th,.item-description-table td{border:1px solid var(--py-border-soft);padding:7px 8px;text-align:left;vertical-align:top;}
.item-description-table th{color:var(--py-text-strong);background:var(--py-panel-soft);font-weight:900;}
[data-py-mode="dark"] .item-inspection-card,
[data-py-mode="dark"] .item-inspection-header,
[data-py-mode="dark"] .item-inspection-body{background:var(--py-panel-glass)!important;}
@media (max-width:1120px){
  .item-table-head{display:none;}
  .item-result-main{grid-template-columns:110px minmax(0,1fr) 150px;}
  .item-rarity-cell,.item-attune-cell,.item-source-cell{display:none;}
  .item-basic-search-grid,.item-advanced-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:720px){
  .item-actions{display:grid;grid-template-columns:1fr 1fr;}
  .item-basic-search-grid,.item-advanced-grid{grid-template-columns:1fr;}
  .item-result-main{grid-template-columns:1fr;}
  .item-category-cell{display:none;}
  .item-type-cell{display:none;}
}

/* Item detail cleanup: internal notes hidden; missing sources display as SRD. */
.item-description .item-full-description,.item-description .item-empty-description{border:0!important;background:transparent!important;border-radius:0!important;padding:0!important;box-shadow:none!important;margin:0!important;}
.item-description .full-width-description{border:0!important;background:transparent!important;border-radius:0!important;padding:0!important;box-shadow:none!important;margin:0!important;}

.item-spell-toolbar {
  justify-content: flex-start;
  gap: 0.55rem;
}

.item-spell-chip {
  cursor: pointer;
}


/* savertest v0.29i: magic-item requirements and large table drawers. */
.item-inspection-drawer.wide{width:min(760px,96vw);}
.item-requirement-note{margin:0 0 14px;padding:12px 14px;border:1px solid var(--py-border-soft);border-radius:14px;background:var(--py-primary-glass);color:var(--py-muted-strong,var(--py-muted));font-size:13px;line-height:1.45;}
.item-requirement-note strong{color:var(--py-text-strong);}
.item-table-wrap.large>.item-description-table{min-width:680px;}
@media(max-width:820px){.item-inspection-drawer.wide{width:min(100vw,96vw);}.item-table-wrap.large>.item-description-table{min-width:620px;}}
