.card[data-bucket]{cursor:pointer;position:relative;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.card[data-bucket]:hover,.card[data-bucket]:focus-within{transform:translateY(-3px);box-shadow:0 12px 28px #292b2c18;border-color:#bd8b6c}
.card-open{border:0;background:none;color:#874627;text-decoration:underline;text-underline-offset:4px;font:700 .9rem 'DM Sans',Arial,sans-serif;text-align:left;padding:0;margin-top:16px;align-self:flex-start;cursor:pointer}
.card-open:focus-visible,.detail-close:focus-visible{outline:3px solid #99502c;outline-offset:4px}
.bucket-dialog{border:0;border-radius:14px;padding:0;width:min(960px,calc(100vw - 32px));max-height:min(90vh,960px);box-shadow:0 30px 80px #10121380;color:#2d3031;background:#f4f5f4;overflow:auto}
.bucket-dialog::backdrop{background:#131719b8}
.detail-layout{display:block}
.detail-figure{margin:0;background:#d8dddd;display:flex;flex-direction:column}
.detail-figure img{width:100%;height:auto;min-height:0;object-fit:contain;display:block}
.detail-figure figcaption{padding:13px 18px;font-size:.8rem;line-height:1.4;color:#545d5d;background:#e8ebeb}
.detail-copy{padding:48px 48px 42px;line-height:1.65}
.detail-copy h2{font-size:clamp(2rem,3.2vw,3rem);margin:9px 0 20px}
.detail-copy h3{font-size:1.13rem;margin:25px 0 5px}
.detail-copy p{margin:0;color:#4c5453}
.detail-copy .detail-lead{font-size:1.08rem;color:#303839}
.detail-copy .detail-number{color:#99502c;font-weight:700;letter-spacing:.1em;font-size:.8rem;margin-top:13px}
.detail-color{display:inline-block;border-radius:999px;padding:4px 10px;margin-left:12px;background:#d8e7f4;color:#133c60;font-size:.75rem;font-weight:700;vertical-align:middle}
.detail-color[data-color="yellow"]{background:#f5dd8b;color:#654500}.detail-color[data-color="white"]{background:#fff;color:#353a3c;border:1px solid #bfc5c4}.detail-color[data-color="green"]{background:#cbe5d3;color:#1c5d38}.detail-color[data-color="purple"]{background:#e2d5f0;color:#553279}.detail-color[data-color="red"]{background:#f4cdca;color:#872a28}.detail-color[data-color="pink"]{background:#f8d3e1;color:#823b5a}
.detail-modules{display:grid;gap:18px;margin-top:10px}.detail-module{border-top:1px solid #d8dcda;padding-top:14px}.detail-module h4{font-size:1rem;margin:0 0 8px;color:#2d3031}.detail-module ul{margin:0;padding-left:20px;color:#4c5453;line-height:1.55}.detail-module li{padding-left:2px;margin:3px 0}
.detail-copy .detail-note{border-top:1px solid #d5d8d6;padding-top:18px;margin-top:28px;font-size:.85rem;color:#65706d}
.detail-toolbar{position:sticky;top:0;z-index:2;padding:10px 16px;background:#f4f5f4;border-bottom:1px solid #d5d8d6}
.detail-close{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:10px 16px;border:1px solid #874627;border-radius:8px;background:#874627;color:#fff;font:700 1rem "DM Sans",Arial,sans-serif;cursor:pointer;touch-action:manipulation}
.detail-close span{font-size:1.5rem;line-height:1}
.detail-close-bottom{margin-top:24px}
body:has(.bucket-dialog[open]){overflow:hidden}
@media(max-width:700px){.detail-layout{display:block}.detail-figure img{height:auto}.detail-copy{padding:29px 26px 36px}.bucket-dialog{max-height:92vh}.detail-toolbar{padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.card[data-bucket]{transition:none}}
