.library{width:100%;margin-top:8px}.library-head{margin-bottom:14px}.library-title{font:600 clamp(18px, 2vw, 22px) / 1.2 var(--font);letter-spacing:-.01em;color:var(--text-primary);margin:0}.library-sub{font:400 var(--fs-md)/1.4 var(--font);color:var(--text-secondary);margin:4px 0 0}.library-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.lib-card{background:var(--surface-elevated);box-shadow:inset 0 0 0 1px var(--line);transition:transform var(--m-fast) var(--ease-out), box-shadow var(--m-fast) var(--ease-out);border-radius:16px;position:relative}.lib-card:hover{box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--lib-accent) 38%, var(--line)), var(--shadow-floating);transform:translateY(-2px)}.lib-open{text-align:left;cursor:pointer;width:100%;color:inherit;border-radius:inherit;background:0 0;border:none;padding:16px 16px 14px;display:block}.lib-open:focus-visible{outline:2px solid var(--lib-accent);outline-offset:2px}.lib-card-head{align-items:center;gap:8px;margin-bottom:12px;display:flex}.lib-card-head.has-remove{padding-right:20px}.lib-dot{border-radius:var(--r-full);background:var(--lib-accent);width:9px;height:9px;box-shadow:0 0 8px color-mix(in oklab, var(--lib-accent) 60%, transparent);flex:none}.lib-card-title{font:600 var(--fs-md)/1.3 var(--font);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lib-count{font:600 var(--fs-2xs)/1 var(--font);color:var(--text-secondary);background:var(--surface-glass-strong);border-radius:var(--r-full);flex:none;margin-left:auto;padding:4px 8px}.lib-moments{border-left:2px solid var(--line);flex-direction:column;gap:7px;margin:12px 0 0;padding:0 0 0 12px;list-style:none;display:flex}.lib-moment{font:400 var(--fs-xs)/1.4 var(--font);color:var(--text-secondary);align-items:flex-start;gap:7px;min-width:0;display:flex}.lib-moment-icon{color:var(--lib-accent);flex:none;margin-top:1px;display:inline-flex}.lib-moment-icon svg{width:11px;height:11px}.lib-moment-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lib-moment-more{color:var(--text-muted)}.lib-meta{font:500 var(--fs-xs)/1 var(--font);color:var(--text-muted);justify-content:space-between;align-items:center;gap:8px;margin-top:12px;display:flex}.lib-resume{color:var(--presence-soft);font-weight:600}.lib-card:hover .lib-resume{color:var(--presence)}.lib-remove{border-radius:var(--r-full);width:24px;height:24px;color:var(--text-muted);cursor:pointer;opacity:.35;transition:opacity var(--m-fast) var(--ease-out), background var(--m-fast) var(--ease-out), color var(--m-fast) var(--ease-out);background:0 0;border:none;place-items:center;display:grid;position:absolute;top:8px;right:8px}.lib-card:hover .lib-remove,.lib-remove:focus-visible{opacity:1}.lib-remove:hover{background:var(--surface-glass-strong);color:var(--text-secondary)}.lib-remove svg{width:13px;height:13px}.lib-count{white-space:nowrap}.lib-group .lib-count{color:var(--lib-accent);background:color-mix(in oklab, var(--lib-accent) 14%, transparent)}.lib-sessions{flex-direction:column;gap:1px;margin:12px 0 0;padding:0;list-style:none;display:flex}.lib-session{position:relative}.lib-session-open{text-align:left;cursor:pointer;width:100%;color:inherit;border-radius:var(--r-sm);transition:background var(--m-fast) var(--ease-out);background:0 0;border:none;align-items:baseline;gap:10px;padding:7px 30px 7px 8px;display:flex}.lib-session-open:hover{background:color-mix(in oklab, var(--lib-accent) 9%, transparent)}.lib-session-open:focus-visible{outline:2px solid var(--lib-accent);outline-offset:-2px}.lib-session-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:500 var(--fs-sm)/1.35 var(--font);color:var(--text-secondary);transition:color var(--m-fast) var(--ease-out);flex:1;overflow:hidden}.lib-session-open:hover .lib-session-title,.lib-session-open:focus-visible .lib-session-title{color:var(--text-primary)}.lib-session-ago{font:500 var(--fs-2xs)/1 var(--font);color:var(--text-muted);flex:none}.lib-session-remove{border-radius:var(--r-full);width:22px;height:22px;color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity var(--m-fast) var(--ease-out), background var(--m-fast) var(--ease-out), color var(--m-fast) var(--ease-out);background:0 0;border:none;place-items:center;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.lib-session:hover .lib-session-remove,.lib-session-remove:focus-visible{opacity:1}.lib-session-remove:hover{background:var(--surface-glass-strong);color:var(--text-secondary)}.lib-session-remove svg{width:12px;height:12px}.lib-session-more{font:500 var(--fs-xs)/1.4 var(--font);color:var(--text-muted);border-radius:var(--r-sm);cursor:pointer;transition:color var(--m-fast) var(--ease-out);background:0 0;border:none;margin-top:2px;padding:5px 8px}.lib-session-more:hover{color:var(--lib-accent)}.lib-group-count{font-family:var(--font-data,inherit);font-size:var(--fs-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.library-count{font-family:var(--font-data,inherit);font-size:var(--fs-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:2px 0 0}.library-tools{justify-content:space-between;align-items:center;gap:12px;margin:14px 0 4px;display:flex}.lib-search{border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface-elevated);min-width:0;max-width:320px;color:var(--text-muted);flex:1;align-items:center;gap:8px;padding:7px 12px;display:inline-flex}.lib-search:focus-within{outline:2px solid var(--presence-soft);outline-offset:2px}.lib-search input{min-width:0;font:inherit;font-size:var(--fs-sm);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.lib-search input::placeholder{color:var(--text-muted)}.lib-tabs{border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface-elevated);gap:2px;padding:2px;display:inline-flex}.lib-tab{font:inherit;font-size:var(--fs-sm);color:var(--text-muted);border-radius:var(--r-full);cursor:pointer;background:0 0;border:none;padding:4px 12px}.lib-tab.on{background:var(--surface-default);color:var(--text-primary);box-shadow:0 1px 3px #00000014}.library-none{font-size:var(--fs-sm);color:var(--text-muted);margin:16px 2px}.lib-more-btn{font:inherit;font-size:var(--fs-sm);color:var(--text-secondary);background:var(--surface-elevated);border:1px solid var(--line);border-radius:var(--r-full);cursor:pointer;margin:16px auto 4px;padding:8px 18px;display:block}.lib-more-btn:hover{border-color:var(--presence);color:var(--text-primary)}
