/* Prism 23 · Tableros tipo Pinterest para portafolios. */
.prism-boards{margin:22px 0!important;overflow:hidden;min-width:0}
.prism-boards-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.prism-boards-head h2{margin:4px 0 2px;font-size:clamp(1.35rem,3.2vw,1.85rem)}
.prism-boards-head p{margin:0;color:#bcb0d9;line-height:1.5}
.prism-board-actions{display:flex;gap:9px;flex-wrap:wrap}
.prism-board-button{font:inherit;border-radius:13px;background:#352a50;color:#eee9ff;border:1px solid #78679d;cursor:pointer;padding:10px 14px;min-height:42px;transition:transform .15s,border-color .15s,background .15s}
.prism-board-button:hover{border-color:#bba3ff;background:#463367;transform:translateY(-1px)}
.prism-board-button:focus-visible{outline:3px solid #81c6ff;outline-offset:2px}
.prism-board-button.primary{background:linear-gradient(110deg,#95a7ff,#e99bdb);color:#130e21;font-weight:750;border:0}
.prism-board-button.danger{border-color:#b66181;color:#ffb4ce}
.prism-board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:16px}
.prism-board-card{border:1px solid #54466e;background:#191529;border-radius:19px;overflow:hidden;min-width:0;box-shadow:0 12px 26px #0002;transition:transform .18s,border-color .18s;animation:boardEntrance .35s both}
.prism-board-card:hover{transform:translateY(-3px);border-color:#b49bee}
.prism-board-cover{height:160px;position:relative;background:linear-gradient(125deg,#37245a,#4e518c,#bb6495);overflow:hidden}
.prism-board-cover:before{content:'✦';position:absolute;top:25%;left:40%;font-size:55px;color:#fffc;filter:drop-shadow(0 0 18px #dba9ff)}
.prism-board-cover img,.prism-board-cover video{position:relative;width:100%;height:100%;object-fit:cover;display:block}
.prism-board-body{padding:14px 14px 16px;display:grid;gap:8px}
.prism-board-body h3{font-size:1.08rem;margin:0;color:#f6f0ff;overflow-wrap:anywhere}
.prism-board-body p{margin:0;color:#bdb4d5;font-size:.9rem;line-height:1.4;overflow-wrap:anywhere}
.prism-board-foot{display:flex;align-items:center;justify-content:space-between;gap:9px}
.prism-board-count{font-size:.82rem;color:#c8bbeb}
.prism-board-link{display:block;text-decoration:none;color:inherit}
.prism-board-link:hover{text-decoration:none}
.prism-boards-note{padding:18px 12px;color:#bbaed4;border:1px dashed #655580;border-radius:15px}
.prism-boards-note[hidden]{display:none}
.prism-board-dialog{max-width:min(610px,calc(100vw - 24px));width:100%;max-height:min(90dvh,800px);overflow:auto;overscroll-behavior:contain;border:1px solid #ad8bf3;border-radius:22px;color:#f8f2ff;background:linear-gradient(160deg,#231937,#131627);box-shadow:0 24px 85px #000a;padding:22px}
.prism-board-dialog::backdrop{background:#080611bd;backdrop-filter:blur(6px)}
.prism-board-dialog h2{margin:0 0 6px;font-size:1.5rem}
.prism-board-dialog p{color:#c7bedb;line-height:1.5}
.prism-board-dialog label{display:block;color:#e4d9f8;font-size:.92rem;margin:13px 0 7px}
.prism-board-dialog input,.prism-board-dialog textarea{display:block;width:100%;box-sizing:border-box;padding:13px;color:#fff;background:#151222;border:1px solid #5e5078;border-radius:12px;font:inherit;resize:vertical}
.prism-board-dialog input:focus,.prism-board-dialog textarea:focus{outline:2px solid #92baff;outline-offset:1px}
.prism-board-dialog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.prism-board-dialog-controls{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin-top:17px}
.prism-board-items{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px;max-height:280px;overflow-y:auto;padding:3px;scrollbar-width:thin}
.prism-board-item{display:flex;align-items:center;gap:11px;border:1px solid #53446d;padding:8px;background:#211b32;border-radius:12px;text-align:left;cursor:pointer;color:#f2eaff;width:100%;min-height:66px;font:inherit}
.prism-board-item:hover{border-color:#b097df}.prism-board-item[aria-pressed='true']{border-color:#bb9afa;background:#352a54}
.prism-board-item img,.prism-board-item video{width:60px;height:48px;object-fit:cover;border-radius:8px;background:#13101d}
.prism-board-item span{flex:1;min-width:0;overflow-wrap:anywhere}.prism-board-item b{color:#bca5ff;white-space:nowrap}
.prism-board-status{min-height:1.3em;color:#b7e6d4;margin:10px 0 0!important}
.prism-board-page{max-width:1280px;margin:auto;padding:clamp(16px,3vw,40px)}
.prism-board-hero{border:1px solid #56466e;border-radius:24px;padding:clamp(20px,4vw,40px);margin:24px 0;background:linear-gradient(115deg,#2a2044,#171b35);overflow-wrap:anywhere}
.prism-board-hero h1{font-size:clamp(1.7rem,5vw,3rem);margin:9px 0}.prism-board-hero p{line-height:1.55;color:#c9bedf}
.prism-board-hero a{color:#bda4ff;text-decoration:none}
.prism-board-work-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:16px}
.prism-board-work{overflow:hidden;border:1px solid #574771;border-radius:18px;background:#1e1930;text-decoration:none;color:#f4ebff}
.prism-board-work img,.prism-board-work video{width:100%;height:210px;object-fit:cover;background:#13101e;display:block}
.prism-board-work-body{padding:14px;display:grid;gap:7px}.prism-board-work-body small{color:#c7b6df}.prism-board-work:hover{border-color:#b6a1fa}
@keyframes boardEntrance{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:440px){.prism-boards{padding:15px!important}.prism-board-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.prism-board-cover{height:125px}.prism-board-body{padding:11px}.prism-board-body h3{font-size:.95rem}.prism-board-dialog{padding:16px}.prism-board-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.prism-board-work img,.prism-board-work video{height:160px}}
@media(max-width:310px){.prism-board-grid,.prism-board-work-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.prism-board-card{animation:none;transition:none}.prism-board-button{transition:none}}
.prism-board-viewer-media{width:100%;display:flex;justify-content:center;align-items:center;min-height:150px;background:#0c0914;border-radius:13px;overflow:hidden}
.prism-board-viewer-media img,.prism-board-viewer-media video{display:block;max-width:100%;max-height:65dvh;object-fit:contain}
#prismBoardViewer{max-width:min(900px,calc(100vw - 20px));max-height:90dvh}
#prismBoardViewer a.prism-board-button{display:inline-block;text-decoration:none}
