/* Conversas / Guardados: composition from 05-PERFIL, with the approved v2 brand. */
.library-icon { display:inline-block; width:24px; height:24px; flex:none; background:currentColor; mask:var(--library-mask) center/contain no-repeat; -webkit-mask:var(--library-mask) center/contain no-repeat; }
.library-icon.history-icon { background:none; mask:none; -webkit-mask:none; }
.library-glyph-search{--library-mask:url('/assets/design-v4/search.svg')}.library-glyph-plus{--library-mask:url('/assets/design-v4/plus.svg')}.library-more>.library-icon{--library-mask:url('/assets/design-v4/more.svg')}.library-glyph-bookmark{--library-mask:url('/assets/design-v4/bookmark.svg')}.library-glyph-lock{--library-mask:url('/assets/design-v4/lock.svg')}.library-glyph-arrow{--library-mask:url('/assets/design-v4/arrow.svg')}.library-glyph-close{--library-mask:url('/assets/design-v4/close.svg')}
.library-surface .library-title { margin:14px 0 10px; font-size:28px; line-height:1.2; font-weight:650; letter-spacing:-.055em; color:var(--io-text); }
.library-title:focus { outline:none; }
.library-surface .product-head { border-bottom:1px solid var(--io-border); }
.library-surface .product-head .wordmark { width:82px; }
.library-surface .library-intro { grid-template-columns:98px minmax(0,1fr); gap:16px; margin:0 0 18px; }
.library-surface .library-intro .product-character { width:98px; height:104px; }
.library-surface .library-intro>div { display:grid; gap:7px; }
.library-surface .library-intro p { font-size:13px; line-height:1.5; font-weight:400; }
.library-surface .library-intro p:first-child { font-size:14px; font-weight:600; }
.library-surface .library-intro p+p { color:var(--io-text-secondary); }
.history-tools { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:stretch; }
.history-search { display:flex; align-items:center; gap:8px; min-width:0; padding:0 10px; border:1px solid var(--io-border); border-radius:14px; color:var(--io-nav-active); }
.history-search .library-icon { width:20px; height:20px; }
.history-search input { width:100%; min-width:0; border:0; background:transparent; border-radius:0; padding:10px 0; min-height:44px; font:inherit; font-size:12px; color:var(--io-text); outline-offset:3px; }
.library-surface .history-new { display:flex; align-items:center; gap:6px; font-size:12px; padding:8px; border-radius:14px; }
.history-new .library-icon { width:20px; height:20px; }
.history-notice:empty,.saved-notice:empty { display:none; }
.history-notice,.saved-notice { margin-top:10px; }
.history-group { margin-top:22px; }
.history-group h2 { font-size:16px; font-weight:500; margin:0 0 10px; letter-spacing:-.03em; }
.history-group ul { list-style:none; margin:0; padding:0 10px; border:1px solid var(--io-border); border-radius:16px; background:var(--io-surface-soft); }
.history-row { display:flex; align-items:center; gap:0; min-width:0; }
.history-row+.history-row { border-top:1px solid var(--io-border); }
.history-open { display:flex; align-items:center; gap:10px; flex:1; min-width:0; min-height:76px; padding:12px 0; border:0; background:transparent; color:var(--io-text); text-align:left; }
.history-open .history-icon { width:36px; height:40px; object-fit:contain; }
.history-open>span { min-width:0; flex:1; display:grid; gap:5px; }
.history-open strong { font-size:14px; line-height:1.3; font-weight:600; letter-spacing:-.035em; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; }
.history-open small { font-size:12px; line-height:1.4; color:var(--io-text-secondary); white-space:nowrap; text-overflow:ellipsis; overflow:hidden; }
.history-open time { width:40px; flex:none; font-size:11px; text-align:right; color:var(--io-text-secondary); }
.library-more { display:grid; place-items:center; width:44px; min-height:44px; flex:none; border:0; background:transparent; color:var(--io-text-secondary); padding:8px; border-radius:10px; }
.library-more>.library-icon { width:20px; height:20px; }
.library-more:hover { background:#c9c3b222; }
.history-privacy { display:flex; justify-content:center; align-items:center; gap:8px; margin-top:22px; font-size:11px; line-height:1.5; color:var(--io-text-secondary); }
.history-privacy .library-icon { width:16px; height:20px; color:var(--io-gold-700); }
[data-history-retention] { font-size:11px; margin-top:8px; text-align:center; }
.library-surface .saved-filters { flex-wrap:nowrap; overflow:auto; scrollbar-width:thin; gap:8px; padding-bottom:4px; border:0; }
.library-surface .saved-filters button { flex:none; min-height:44px; min-width:68px; padding:8px 12px; font-size:13px; font-weight:500; border:1px solid var(--io-border); border-radius:99px; }
.library-surface .saved-filters button[aria-pressed="true"] { background:var(--io-turq-500); border-color:var(--io-turq-500); color:#fff; }
.saved-section-head { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.saved-section-head h2 { min-width:0; overflow-wrap:anywhere; }
.saved-section-head .product-text-button { display:flex; align-items:center; gap:5px; min-height:44px; font-size:12px; color:var(--io-turq-700); }
.saved-section-head .library-icon { width:18px; height:18px; }
.saved-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.saved-visual-card { position:relative; isolation:isolate; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; min-width:0; min-height:218px; border-radius:14px; background:#292821; color:white; }
.saved-visual-card>img { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; }
.saved-visual-card::after { content:''; position:absolute; z-index:-1; inset:0; background:linear-gradient(#0004 0%,#0001 30%,#000b 65%,#000e 100%); }
.saved-visual-card.without-image { background:linear-gradient(145deg,#23515b,#1c313b); }
.saved-card-top { display:flex; align-items:flex-start; justify-content:flex-end; position:relative; padding:2px 1px 34px; }
.saved-card-top .library-more { color:#fff; }
.saved-badge { position:absolute; left:9px; right:9px; top:43px; width:fit-content; max-width:calc(100% - 18px); padding:3px 5px; border-radius:6px; background:#17130bcc; font-size:10px; font-weight:600; line-height:1.35; color:#ffce72; text-transform:uppercase; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.saved-marker { display:grid; place-items:center; width:44px; min-height:44px; padding:10px; color:#ffc765; background:transparent; border:0; }
.saved-marker .library-icon { width:17px; height:22px; }
.saved-card-copy { display:grid; gap:10px; padding:12px 9px 10px; min-width:0; }
.saved-card-copy h3 { font-size:15px; line-height:1.25; font-weight:600; letter-spacing:-.025em; overflow-wrap:anywhere; margin:0; display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; color:#fff; }
.saved-card-action { display:flex; justify-content:center; align-items:center; gap:6px; min-height:44px; border:1px solid #ffc765; color:#ffc765; font-size:12px; font-weight:500; line-height:1.2; border-radius:99px; padding:6px; background:#0002; text-decoration:none; }
.saved-card-action .library-icon { width:17px; height:17px; }
.saved-collections { display:grid; gap:9px; }
.saved-collection { display:flex; align-items:center; overflow:hidden; min-height:64px; border:1px solid var(--io-border); border-radius:14px; }
.collection-open { display:flex; align-items:stretch; gap:12px; flex:1; min-width:0; border:0; color:var(--io-text); background:transparent; padding:0; text-align:left; }
.collection-covers { width:104px; min-height:64px; display:flex; overflow:hidden; background:#e5e2da; flex:none; align-self:stretch; color:#dba145; }
.collection-covers img { flex:1; width:0; min-width:0; object-fit:cover; border-right:1px solid #fff8; }
.collection-covers>.library-icon { align-self:center; margin:auto; }
.collection-open>span+span { min-width:0; align-self:center; padding-block:10px; display:grid; gap:6px; }
.collection-open strong { font-size:13px; font-weight:500; overflow-wrap:anywhere; line-height:1.35; }
.collection-open small { font-size:12px; color:var(--io-text-secondary); }
.saved-storage { margin-top:18px; font-size:11px; }
.library-dialog { width:min(360px,calc(100vw - 32px)); max-height:85dvh; border:1px solid var(--io-border); border-radius:20px; padding:22px; color:var(--io-text); background:var(--io-surface); box-shadow:0 16px 70px #0004; }
.library-dialog::backdrop { background:#25231d77; }
.library-dialog form { display:grid; gap:14px; }
.library-dialog h2 { font-size:21px; margin:0; line-height:1.25; letter-spacing:-.03em; }
.library-dialog p { font-size:14px; line-height:1.5; overflow-wrap:anywhere; }
.library-dialog label { display:grid; gap:8px; font-size:14px; }
.library-dialog input:not([type=checkbox]),.library-dialog select { width:100%; min-height:44px; border:1px solid var(--io-border); border-radius:10px; padding:10px; font:inherit; background:var(--io-surface-soft); color:var(--io-text); }
.library-dialog-status:empty { display:none; }.library-dialog-status { color:var(--io-turq-700); }
.library-dialog .product-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; }
.library-dialog .collection-choices { display:grid; max-height:35dvh; overflow:auto; }
.collection-choices label { display:flex; align-items:center; min-height:44px; gap:10px; }
.collection-choices input { width:18px; height:18px; }
@media(max-width:390px){
  .library-surface .library-intro{grid-template-columns:90px minmax(0,1fr);gap:12px}.library-surface .library-intro .product-character{width:90px;height:100px}
  .history-open{gap:7px}.history-open .history-icon{width:30px;height:36px}.history-open strong{font-size:13px}.history-open time{width:34px;font-size:10px}.history-group ul{padding-inline:8px}.history-search{padding-inline:8px;gap:5px}.history-tools{gap:6px}.history-new .library-icon{width:17px;height:17px}.library-surface .history-new{font-size:11px;padding:6px}
  .collection-covers{width:82px}.collection-open{gap:9px}.saved-card-copy h3{font-size:14px}.saved-card-action{font-size:11px}
}
@media(forced-colors:active){.saved-visual-card{border:1px solid CanvasText}.saved-card-copy h3,.saved-card-action{color:CanvasText}.history-icon{forced-color-adjust:none}}
