.library-page{padding:1rem 1rem max(1.5rem, env(safe-area-inset-bottom));min-height:calc(100dvh - var(--nav-height));box-sizing:border-box}.library-shell{width:min(1100px,100%);margin:auto}.library-body{gap:1rem;display:grid}.library-status{color:var(--color-text-muted);margin:.75rem 0}.library-status:empty{display:none}.library-shell,.library-dialog{color:var(--color-text)}.library-shell button,.library-shell input,.library-shell select,.library-dialog button,.library-dialog input,.library-dialog select{font:inherit;color:inherit;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-2);box-sizing:border-box;min-height:44px;padding:.7rem .9rem}.library-shell button,.library-dialog button{cursor:pointer}.library-shell button:disabled,.library-dialog button:disabled{opacity:.55;cursor:wait}.library-shell a,.library-dialog a{color:var(--color-accent)}.library-shell label,.library-dialog label{gap:.4rem;display:grid}.library-shell input,.library-shell select,.library-dialog input,.library-dialog select{min-width:0;max-width:100%}.library-shell :focus-visible,.library-dialog :focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.library-tabs,.library-inline{flex-wrap:wrap;align-items:end;gap:.65rem;display:flex}.library-shell .library-tabs{z-index:auto;background:0 0;width:auto;height:auto;margin:0;padding:0;position:static;inset:auto;transform:none}.library-tabs [aria-current=true]{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 15%, var(--color-surface-2))}.library-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:.8rem;display:grid}.library-card,.library-editor,.library-detail{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-1);padding:1rem}.library-card{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.library-card p{width:100%;margin:0}.library-editor{gap:.8rem;max-width:620px;display:grid}.library-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,155px),1fr));gap:.8rem;margin-top:1rem;display:grid}.library-post{align-content:start;gap:.5rem;min-width:0;display:grid}.library-post img{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-control);background:var(--color-surface-2);width:100%}.library-post label{align-items:center;display:flex}.library-post input{min-height:20px}.library-dialog{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-1);width:min(480px,100vw - 3rem);max-height:85dvh;padding:0;overflow:hidden}.library-dialog::backdrop{background:#0009}.library-dialog[open]{animation:library-dialog-in var(--motion-duration-surface) var(--motion-ease-standard) both;flex-direction:column;display:flex}.library-dialog-header{flex:none;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:.5rem;padding:1rem 1rem .5rem;display:grid;position:relative}.library-dialog .library-dialog-dismiss{background:0 0;border-color:#0000;padding:0;font-size:1.6rem}.library-dialog .library-dialog-handle{display:none}.library-dialog form{overscroll-behavior:contain;grid-auto-rows:max-content;align-content:start;gap:.8rem;min-height:0;padding:.5rem 1rem 1rem;scroll-padding-block:12px;display:grid;overflow-y:auto}@media (max-width:500px){.library-tabs button{flex:1}.library-inline>*{max-width:100%}}.library-shell{width:min(var(--width-workspace), 100%)}.library-shell>header{margin-bottom:1rem;padding:0}.library-shell>header p{margin:.5rem 0 0}.library-shell h1{font-size:var(--text-page);letter-spacing:-.04em;margin:0}.library-shell p{color:var(--color-text-muted);line-height:1.6}.library-body{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:1.5rem}.library-sidebar{top:calc(var(--nav-height) + 1rem);background:var(--color-surface-1);border-radius:var(--radius-card);padding:1.25rem;position:sticky}.library-sidebar h2{margin:0 0 1.25rem;font-size:1rem}.library-sidebar p,.library-sidebar>a{font-size:.8rem}.library-shell .library-tabs{border:0;flex-direction:column;align-items:stretch;gap:.4rem;display:flex}.library-tabs button{text-align:left;background:0 0;border-color:#0000;font-weight:600}.library-content{border-radius:var(--radius-card);background:var(--color-surface-1);min-width:0;min-height:0;padding:1.75rem}.library-section-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.library-section-header h2{letter-spacing:-.035em;margin:0;font-size:1.7rem}.library-section-header p{margin:.4rem 0 0}.library-shell button.library-primary{background:var(--color-accent);color:var(--color-on-accent);border-radius:var(--radius-control);border-color:#0000;flex-shrink:0;font-weight:700}.library-find{max-width:360px;color:var(--color-text-muted);margin:0 0 1.5rem;font-size:.8rem}.library-find input{border-radius:var(--radius-control);width:100%}.library-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),1fr));gap:1.1rem}.library-collection-card{border-radius:var(--radius-control);align-content:start;min-width:0;display:grid;position:relative}.library-collection-card:has(.library-collection-more[open]){z-index:4}.library-shell .library-collection{text-align:left;border-radius:var(--radius-control);background:0 0;border:1px solid #0000;flex-direction:column;align-items:stretch;gap:.5rem;min-width:0;padding:.65rem;display:flex}.library-collection{transition:background-color var(--motion-transition-fast), transform var(--motion-transition-fast), box-shadow var(--motion-transition-fast)}.library-collection:hover{background:var(--color-surface-2);transform:translateY(-2px);box-shadow:0 10px 24px #00000026}.library-collection strong{overflow-wrap:anywhere;margin-top:.3rem;font-size:1.05rem}.library-collection>span:last-child{color:var(--color-text-muted);font-size:.8rem}.library-cover{aspect-ratio:1;border-radius:var(--radius-control);background:linear-gradient(145deg, color-mix(in srgb, var(--color-accent) 45%, var(--color-surface-2)), var(--color-surface-2));width:100%;color:var(--color-text);letter-spacing:-.05em;place-items:center;font-size:3rem;font-weight:800;display:grid;box-shadow:0 8px 22px #0002}.library-detail{background:0 0;border:0;padding:0}.library-collection-hero{align-items:end;gap:1.5rem;padding:2rem 0;display:flex}.library-collection-hero .library-cover{flex-shrink:0;width:170px}.library-collection-hero h2{letter-spacing:-.04em;overflow-wrap:anywhere;margin:.5rem 0;font-size:clamp(1.7rem,4vw,3rem)}.library-collection-hero small{letter-spacing:.12em;font-size:.7rem}.library-detail>.library-inline{margin-bottom:1rem}.library-inline[hidden]{display:none}.library-inline:has(>span){top:calc(var(--nav-height) + .5rem);z-index:2;background:var(--color-surface-2);border-radius:var(--radius-control);padding:.75rem;position:sticky;box-shadow:0 5px 20px #0002}.library-search-list{gap:.6rem;display:grid}.library-card{background:var(--color-surface-2);border-color:#0000;flex-wrap:nowrap}.library-search-info{flex:1;min-width:0}.library-search-info a{color:var(--color-text);font-size:1.1rem;font-weight:650}.library-search-info p{overflow-wrap:anywhere;font-size:.85rem}.library-search-info small{color:var(--color-text-muted)}.library-search-icon{padding:.5rem;font-size:2rem}.library-empty{text-align:center;border:1px dashed var(--color-border);border-radius:var(--radius-card);grid-column:1/-1;padding:3rem 1rem}.library-post>a{border-radius:var(--radius-control);background:var(--color-surface-2);display:block;overflow:hidden}.library-post img{transition:transform .2s;display:block}.library-post a:hover img{transform:scale(1.03)}.library-dialog .library-editor{background:0 0;border:0;border-radius:0}.library-feed-hint{font-size:.85rem}@media (prefers-reduced-motion:reduce){.library-post img{transition:none}.library-collection:hover{transform:none}}@media (max-width:800px){.library-body{grid-template-columns:minmax(0,1fr);gap:.75rem}.library-sidebar{background:0 0;padding:.5rem 0;position:static}.library-sidebar h2,.library-sidebar p{display:none}.library-sidebar>a{margin-top:.75rem;display:inline-block}.library-shell .library-tabs{flex-flow:row;display:flex}.library-tabs button{text-align:center;padding:.6rem .7rem;font-size:.85rem}.library-content{padding:1.25rem}}@media (max-width:500px){.library-page{padding-left:.75rem;padding-right:.75rem}.library-section-header{flex-direction:column;align-items:start}.library-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem}.library-cover{font-size:2.3rem}.library-collection-hero{align-items:center;gap:1rem}.library-collection-hero .library-cover{width:90px}.library-card{flex-wrap:wrap;gap:.5rem}.library-search-info{flex-basis:calc(100% - 60px)}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.library-cover-images{grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden}.library-cover-images img{object-fit:cover;aspect-ratio:1;width:100%;height:100%;min-height:0}.library-cover-images img:only-child{grid-column:1/-1}.library-shell a.library-collection{color:var(--color-text);text-decoration:none}.library-collection-card-actions{align-items:center;gap:.35rem;padding:0 .65rem .65rem;display:flex}.library-collection-card-actions>button{background:0 0;flex:1;font-weight:650}.library-collection-more{position:relative}.library-collection-more summary{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-control);cursor:pointer;place-items:center;width:44px;height:44px;list-style:none;display:grid}.library-collection-more summary::-webkit-details-marker{display:none}.library-collection-more>div{z-index:5;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-2);min-width:180px;padding:.4rem;display:grid;position:absolute;top:calc(100% + .25rem);right:0;box-shadow:0 8px 25px #0005}.library-collection-more>div>*{box-sizing:border-box;border-radius:var(--radius-control);width:100%;min-height:44px;color:var(--color-text);text-align:left;background:0 0;border:0;align-items:center;padding:.65rem .75rem;text-decoration:none;display:flex}.library-collection-more>div>:hover{background:var(--color-surface-1)}.library-collection-more>div>button:last-child{color:var(--color-danger,#d94b4b)}.library-shell a.library-primary{box-sizing:border-box;border-radius:var(--radius-control);background:var(--color-accent);color:#151515;align-items:center;min-height:44px;padding:.7rem .9rem;font-weight:700;text-decoration:none;display:inline-flex}.library-dialog h2{letter-spacing:-.03em;margin:0;font-size:1.5rem}.library-dialog-description{color:var(--color-text-muted);margin:0 0 .25rem;line-height:1.5}.library-dialog input{width:100%;font-size:16px}.library-dialog .library-primary{background:var(--color-accent);color:#151515;border-color:#0000;font-weight:700}.library-picker-list{overscroll-behavior:contain;gap:.35rem;max-height:36dvh;display:grid;overflow-y:auto}.library-dialog .library-picker-row{text-align:left;background:0 0;border-color:#0000;align-items:center;gap:.8rem;padding:.5rem;display:flex}.library-dialog .library-picker-row:hover{background:var(--color-surface-2)}.library-dialog .library-picker-row.is-saved{background:var(--color-surface-2);border-color:var(--color-border)}.library-picker-cover{border-radius:var(--radius-control);background:var(--color-surface-2);flex:0 0 48px;place-items:center;width:48px;height:48px;font-weight:700;display:grid;overflow:hidden}.library-picker-cover img{object-fit:cover;width:100%;height:100%}.library-picker-copy{flex:1;gap:.2rem;min-width:0;display:grid}.library-picker-copy strong{overflow-wrap:anywhere}.library-picker-copy small,.library-picker-empty{color:var(--color-text-muted)}.library-picker-add{color:var(--color-accent);font-size:1.4rem}.library-picker-create{background:var(--color-surface-2);border-radius:var(--radius-control);gap:.75rem;padding:.75rem;display:grid}.library-picker-create[hidden],.library-picker-status:empty{display:none}.library-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:library-backdrop-in var(--motion-duration-surface) ease-out both;background:#0009}@media (max-width:600px){.library-dialog{inset:auto;top:calc(var(--library-viewport-top,0px) + var(--library-viewport-height,100dvh));left:var(--library-viewport-left,0px);transform:translateY(calc(-100% + var(--library-drag-y,0px)));width:var(--library-viewport-width,100%);max-width:100%;max-height:min(88dvh, var(--library-viewport-height,100dvh) - 12px);box-sizing:border-box;border-radius:1.4rem 1.4rem 0 0;margin:0;padding:0;position:fixed}.library-dialog-header{touch-action:none;padding-top:44px}.library-dialog .library-dialog-handle{background:0 0;border:0;place-items:center;width:100%;height:44px;padding:0;display:grid;position:absolute;inset:0 0 auto}.library-dialog-handle:before{content:"";background:var(--color-border);border-radius:4px;width:36px;height:4px}.library-dialog form{max-width:none;padding-bottom:max(1rem, env(safe-area-inset-bottom))}.library-dialog[open]{animation-name:library-sheet-in}}.library-browse-tools{flex-wrap:wrap;align-items:end;gap:.75rem;margin-bottom:1.5rem;display:flex}.library-browse-tools .library-find{flex:180px;margin:0}.library-browse-tools select{flex:0 auto}.library-card[hidden],.library-empty[hidden]{display:none}.library-supporter-prompt{border:1px solid var(--color-border);border-radius:var(--radius-control);background:color-mix(in srgb, var(--color-accent) 7%, var(--color-surface-2));margin-bottom:1.25rem;padding:1.25rem}.library-supporter-prompt p{margin:.5rem 0}.library-supporter-prompt a{padding:.5rem 0;font-weight:650;display:inline-block}.library-dialog .library-editor-status:empty{display:none}.library-dialog .library-field-hint{color:var(--color-text-muted);margin:-.35rem 0 0;font-size:.85rem;line-height:1.5}.library-dialog .library-editor>label{font-size:.9rem;font-weight:600}.library-dialog .library-editor select{width:100%;font-size:16px}.library-post{position:relative}.library-reorder-grip{border-radius:var(--radius-control);background:var(--color-surface-1);width:44px;height:44px;color:var(--color-text);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;place-items:center;font-size:1.6rem;display:grid;position:absolute;top:.4rem;right:.4rem;box-shadow:0 2px 8px #0004}.library-post:has(.library-reorder-grip)>a{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.library-post.is-dragging{opacity:.35;outline:2px dashed var(--color-accent);border-radius:var(--radius-control)}.library-grid.is-reordering{-webkit-user-select:none;user-select:none}.library-drag-preview{z-index:10000;pointer-events:none;opacity:.9;position:fixed;transform:scale(1.03);box-shadow:0 10px 35px #0006}.library-reorder-help{color:var(--color-text-muted);font-size:.85rem}.library-reorder-status{min-height:1.5em;font-size:.85rem}.library-keyboard-hint{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.library-detail:has(.library-reorder-grip:focus-visible) .library-keyboard-hint{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;position:static;overflow:visible}.library-focused .library-body{display:block}.library-focused>header[hidden],.library-sidebar[hidden]{display:none}.library-focused .library-content{background:0 0;padding:0}.library-focused .library-status:empty,.library-reorder-status:empty{display:none}.library-organizer-header{align-items:center;gap:.75rem;padding:.5rem 0 1rem;display:flex}.library-organizer-title{flex:1;min-width:0}.library-organizer-title h2{letter-spacing:-.03em;overflow-wrap:anywhere;margin:0 0 .25rem;font-size:1.3rem}.library-organizer-title small{color:var(--color-text-muted)}.library-shell .library-back,.library-shell .library-organizer-done{justify-content:center;align-items:center;min-width:44px;min-height:44px;text-decoration:none;display:inline-flex}.library-shell .library-back{color:var(--color-text);font-size:1.5rem}.library-organizer-done{font-weight:700}.library-collection-menu{position:relative}.library-collection-menu summary{cursor:pointer;border-radius:var(--radius-control);place-items:center;width:44px;height:44px;list-style:none;display:grid}.library-collection-menu summary::-webkit-details-marker{display:none}.library-collection-options{z-index:5;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-control);min-width:190px;padding:.4rem;position:absolute;top:100%;right:0;box-shadow:0 8px 25px #0005}.library-collection-options button{text-align:left;background:0 0;border:0;width:100%;display:block}.library-collection-options button:hover{background:var(--color-surface-1)}.library-organizer-search{align-items:end;gap:.5rem;margin-bottom:1rem;display:flex}.library-organizer-search[hidden]{display:none}.library-organizer-search label{flex:1;min-width:0}.library-post-select{background:#0006;border-radius:50%;justify-content:center;min-width:44px;min-height:44px;margin:0;position:absolute;top:.5rem;left:.5rem}.library-post-select input{cursor:pointer;width:20px;height:20px;min-height:20px;accent-color:var(--color-accent);margin:0;padding:0}.library-post.is-selected>a{outline:3px solid var(--color-accent);outline-offset:-3px}.library-reorder-grip{color:#fff;box-shadow:none;background:#0009;top:auto;bottom:.5rem;right:.5rem}.library-reorder-steps{gap:.25rem;display:flex;position:absolute;bottom:.5rem;left:.5rem}.library-shell .library-reorder-steps button{color:#fff;background:#0009;border-color:#0000;place-items:center;width:44px;min-width:44px;height:44px;padding:0;font-weight:800;display:grid}.library-shell .library-reorder-steps button:disabled{opacity:.35;cursor:default}.library-focused .library-grid{gap:.65rem;margin-top:.5rem}.library-focused .library-post{gap:0}.library-selection-toolbar{background:var(--color-surface-2);border-radius:var(--radius-control);padding:.75rem}@media (max-width:600px){.library-focused .library-organizer-header{gap:.3rem}.library-focused .library-organizer-title h2{font-size:1.15rem}.library-focused .library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.library-focused .library-content{border:0;min-height:0}.library-post-select{opacity:0}.library-post.is-selected .library-post-select,.library-post:focus-within .library-post-select{opacity:1}@media (hover:hover){.library-post:hover .library-post-select{opacity:1}}.library-save-notice{z-index:10000;bottom:max(1.25rem, env(safe-area-inset-bottom));box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-1);width:max-content;max-width:calc(100% - 2rem);color:var(--color-text);animation:library-notice-in var(--motion-duration-feedback) var(--motion-ease-standard) both;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.6rem .65rem .6rem 1rem;display:grid;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #0005}.library-save-notice>span{overflow-wrap:anywhere}.library-save-notice a{color:var(--color-accent);padding:.5rem 0}.library-save-notice-dismiss{border-radius:var(--radius-control);width:44px;height:44px;color:var(--color-text);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font-size:1.5rem;display:grid}.library-save-notice-dismiss:hover{background:var(--color-surface-2)}.library-save-notice :focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (max-width:480px){.library-save-notice{grid-template-columns:minmax(0,1fr) auto;gap:.3rem .75rem}.library-save-notice a{grid-column:1}.library-save-notice-dismiss{grid-area:1/2/3}}.library-search-options{align-self:start;position:relative}.library-search-options summary{cursor:pointer;box-sizing:border-box;min-height:44px;padding:.7rem;font-size:.85rem}.library-search-options>div{z-index:3;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-1);gap:.4rem;min-width:130px;padding:.5rem;display:grid;position:absolute;bottom:calc(100% + .25rem);right:0;box-shadow:0 6px 18px #0003}.library-editor details summary{cursor:pointer;box-sizing:border-box;min-height:44px;padding:.7rem 0}.library-editor details>label{gap:.4rem;margin-top:.7rem;display:grid}.library-limit{color:var(--color-text-muted);line-height:1.5}.library-shell [hidden],.library-dialog [hidden]{display:none!important}.library-collection-more[open]>div,.library-collection-menu[open]>.library-collection-options,.library-search-options[open]>div{animation:library-popover-in var(--motion-duration-surface) var(--motion-ease-standard) both;transform-origin:100% 100%}@keyframes library-dialog-in{0%{opacity:0;translate:0 .5rem;scale:.97}to{opacity:1;translate:0;scale:1}}@keyframes library-sheet-in{0%{opacity:.72;translate:0 2.5rem}to{opacity:1;translate:0}}@keyframes library-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes library-notice-in{0%{opacity:0;translate:0 1rem;scale:.97}to{opacity:1;translate:0;scale:1}}@keyframes library-popover-in{0%{opacity:0;transform:translateY(.35rem)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.library-feed-controls{margin-bottom:1rem}.library-feed-page{gap:1rem;display:grid}.library-feed-page>h2,.library-feed-page>p{margin:0}.library-feed-page>.library-grid{margin-top:0}.library-tag-suggestions{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-2);max-height:12rem;overflow-y:auto}.library-tag-suggestions [role=option]{box-sizing:border-box;cursor:pointer;overflow-wrap:anywhere;min-height:44px;padding:.7rem .9rem}.library-tag-suggestions [role=option]:hover,.library-tag-suggestions [aria-selected=true]{background:var(--color-surface-3,var(--color-surface-1));color:var(--color-accent)}.collection-sharing-controls{gap:1rem;display:grid}.collection-sharing>p{margin:0;line-height:1.6}.collection-sharing-controls label{font-size:.85rem}.collection-sharing-controls input{width:100%}.collection-sharing-controls .library-inline{align-items:center}.collection-sharing-controls .library-inline button{flex:1}.collection-feed-header .collection-feed-share{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-2);min-height:44px;color:var(--color-text);font:inherit;cursor:pointer;padding:.55rem 1rem}
