/* A practical workspace for choosing and keeping track of stitching projects. */
.library-edition{--paper:#f8f5ef;--white:#fffdf9;--ink:#302c28;--muted:#756d63;--line:#e3ddd2}
.library-edition .demo-strip{display:none}.library-edition .app-header{height:78px;padding:0 32px;background:#fffdf9;backdrop-filter:none}.library-edition .brand{font-size:30px;min-width:210px}.library-edition .header-label{font-size:10px}.library-edition .account{font-size:12px}
.library-edition .app-layout{max-width:1680px;grid-template-columns:232px minmax(0,1fr)}.library-edition .sidebar{top:78px;height:calc(100dvh - 78px);padding:24px 15px;background:#f2eee5}.library-edition .primary-nav button{font-size:12px;gap:9px}.library-edition .side-categories button{font-size:12px;min-height:36px}.library-edition .sidebar-gift{display:none}.local-note{font-size:10px;line-height:1.7;color:#766d61;margin:28px 12px 0}.library-edition main{padding:30px 36px 24px;min-width:0}
.library-edition .compact-welcome{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 0 28px;margin-bottom:24px;background:none;border:0;border-bottom:1px solid var(--line);min-height:0;border-radius:0;overflow:visible}.compact-welcome:before,.compact-welcome:after{display:none!important}.library-edition .compact-welcome h1{font-size:clamp(32px,3.1vw,46px);margin:8px 0 12px;letter-spacing:-1px}.compact-welcome>div>p:last-child{font-size:13px;color:var(--muted)}.welcome-discover{display:flex;align-items:center;gap:12px;padding:10px 15px 10px 10px;border:1px solid var(--line);border-radius:9px;background:#fffdf9;max-width:260px}.welcome-discover img{width:66px;height:66px;border-radius:5px;object-fit:contain}.welcome-discover span{font-size:8px;letter-spacing:1.3px;line-height:1.8}.welcome-discover strong{display:block;font-size:12px;letter-spacing:0;line-height:1.4;font-weight:500}
.library-edition .shelf-heading{margin-bottom:18px}.library-edition .shelf-heading h2{font-size:28px}.library-edition .shelf-heading .eyebrow{display:none}.library-edition .preview-count{font-size:12px}.library-edition .search-row{margin-bottom:14px;gap:12px}.library-edition .search-field{background:#fffdf9;min-height:49px;border-radius:7px}.library-edition .search-field input{font-size:14px}.library-edition .sort-field select{font-size:12px;min-height:49px;border-radius:7px}.library-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:20px}.library-toolbar label{display:grid;gap:5px;font-size:10px;color:var(--muted)}.library-toolbar select{background:#fffdf9;border:1px solid var(--line);border-radius:6px;padding:10px 30px 10px 10px;color:var(--ink);min-height:40px;font-size:12px}.library-toolbar>.text-button{margin:0 auto 0 3px;min-height:40px;font-size:12px}.density-control{display:flex;align-items:center;gap:3px;background:#ebe6dc;border-radius:6px;padding:3px}.density-control button{border:0;padding:9px;font-size:10px;background:none;border-radius:4px}.density-control button[aria-pressed=true]{background:#fffdf9;color:var(--cherry);box-shadow:0 1px 4px #302c2810}.library-edition .results-line{margin:0 0 14px;font-size:11px}.library-edition .shelf-note{display:none}
.library-edition .pattern-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.library-edition .pattern-grid.compact-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.library-edition .pattern-card{background:#fffdf9;border:1px solid var(--line);border-radius:10px;overflow:hidden;padding:0;box-shadow:none;transition:transform .18s,box-shadow .18s}.library-edition .pattern-card:hover{transform:translateY(-3px);box-shadow:0 12px 25px #342c2a0a}.library-edition .pattern-open{padding:0 0 18px;width:100%;text-align:left}.library-edition .card-image{aspect-ratio:1.08;background:#eee8dc;margin:0;overflow:hidden;border-radius:0}.library-edition .catalog-image{height:100%;width:100%;display:grid;place-items:center;background:#f4efe5}.library-edition .catalog-image img{position:static;width:100%;height:100%;object-fit:contain;transform:none;max-width:100%}.library-edition .card-topline{margin:16px 17px 0}.library-edition .card-category{font-size:9px;letter-spacing:1.3px;color:var(--forest)}.library-edition .pattern-card h3{font-family:var(--serif);font-size:23px;line-height:1.25;margin:8px 17px 12px;min-height:0}.library-edition .card-foot{margin:0 17px;font-size:11px;color:var(--muted)}.library-edition .save-button{top:12px;right:12px;width:35px;height:35px;background:#fffdf9f5;border:1px solid #e0d6c6;box-shadow:0 2px 5px #302c2808}.library-edition .save-button[aria-pressed=true]{background:#7e283b;color:#fff}.library-edition .load-more{border:1px solid #ccbca8;background:#fffdf9;padding:13px 32px;border-radius:6px;min-height:46px;margin-top:30px}.library-edition .member-note{margin-top:45px;padding:22px;gap:20px}.library-edition .member-note h3{font-size:22px}.library-edition .member-note p{font-size:12px}
.library-edition #pattern-dialog{width:min(1100px,94vw);max-height:90dvh;padding:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-radius:12px;overflow-y:auto;overflow-x:hidden}.library-edition #pattern-dialog[open]{display:grid}.library-edition .detail-visual{padding:24px;background:#f0e9dd;min-width:0;align-self:stretch}.library-edition .detail-image{width:100%;height:auto;aspect-ratio:1;min-height:0;overflow:auto;display:block;border-radius:7px;background:#fffdf9}.library-edition .detail-image .catalog-image{height:100%;width:100%}.library-edition .detail-image.zoomed .catalog-image{width:150%;height:150%;max-width:none}.library-edition .inspiration-image{width:100%;height:100%;object-fit:contain}.library-edition .detail-image.zoomed .inspiration-image{width:150%;height:150%;max-width:none}.preview-controls{display:flex;gap:16px;flex-wrap:wrap;margin-top:16px}.preview-controls button{font-size:11px;min-height:32px}.library-edition #preview-caption{font-size:11px;line-height:1.7;margin-top:8px;color:#75695c}.library-edition .detail-copy{padding:36px 28px 28px;min-width:0}.library-edition .detail-copy h2{font-size:36px;line-height:1.1}.library-edition .detail-copy>p{font-size:12px}.library-edition .detail-chips{margin:18px 0;gap:8px}.library-edition .detail-chips span{font-size:10px;background:#f4efe5;padding:5px 9px}.library-edition .file-placeholder{margin:0 0 14px;padding:14px;background:#f5f2eb;border:0;border-radius:7px}.library-edition .file-placeholder p{font-size:11px}.library-edition .download-pattern{min-height:47px}.library-edition .save-detail{background:#fffdf9;color:var(--cherry);border:1px solid #cdb9b0;min-height:42px}.library-edition .detail-navigation{margin-top:24px;gap:16px}.project-editor{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.project-editor h3{font-size:23px}.project-editor>p{font-size:10px;color:var(--muted);margin:6px 0 15px}.project-editor label{display:block;font-size:11px;margin:12px 0 6px}.project-editor select,.project-editor textarea{display:block;width:100%;padding:10px;border:1px solid #d7ccbc;border-radius:5px;background:#fffdf9;color:var(--ink);font:12px var(--sans)}.project-editor textarea{resize:vertical}.project-editor>button{margin-top:12px;font-size:12px;min-height:34px}.project-editor #project-feedback{display:block;font-size:11px;color:var(--forest)}.related-patterns{margin:24px 0}.related-patterns h3{font-size:20px;margin-bottom:12px}.related-patterns>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.related-patterns button{border:1px solid var(--line);border-radius:5px;background:#fffdf9;padding:5px;font-size:9px;line-height:1.4;text-align:left}.related-patterns img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}.related-patterns span{display:block;padding:5px 3px}.library-edition .close{z-index:3;background:#fffdf9;border:1px solid #d8cdbc;right:10px;top:10px}.library-edition .mobile-dock{background:#fffdf9}.library-edition .empty-state{padding:40px 20px}
@media(min-width:1450px){.library-edition .pattern-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.library-edition .pattern-grid.compact-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1100px){.library-edition .app-layout{grid-template-columns:200px minmax(0,1fr)}.library-edition main{padding:25px 22px}.welcome-discover{display:none}.library-edition .pattern-grid{gap:15px}.library-edition .pattern-card h3{font-size:20px}.library-edition .pattern-grid.compact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.library-edition .app-header{height:66px;padding:0 16px}.library-edition .brand{font-size:27px;min-width:0}.library-edition .brand img{width:28px}.library-edition .brand small{font-size:5px}.library-edition .header-label{display:none}.library-edition .account{font-size:10px;max-width:145px}.library-edition .account-avatar{display:none}.library-edition .app-layout{display:block}.library-edition .sidebar{display:none}.library-edition main{padding:24px 16px 95px}.library-edition .compact-welcome{padding:0 0 21px;margin:0 0 22px}.library-edition .compact-welcome h1{font-size:33px}.compact-welcome>div>p:last-child{font-size:12px;max-width:280px}.library-edition .shelf-heading{display:block}.library-edition .shelf-heading h2{font-size:25px}.library-edition .preview-count{display:block;margin-top:8px;font-size:11px}.library-edition .search-row{display:flex;flex-wrap:wrap;margin-bottom:12px}.library-edition .search-field{width:100%;flex:1 0 100%}.library-edition .sort-field{flex:1}.library-edition .sort-field select{width:100%;min-height:40px}.library-edition .mobile-category{display:flex;align-items:center;gap:10px;font-size:11px;margin-bottom:12px}.library-edition .mobile-category select{min-height:40px;flex:1;background:#fffdf9;border:1px solid var(--line);border-radius:5px;padding:8px;font-size:12px;min-width:0}.library-toolbar{gap:10px;margin-bottom:15px}.library-toolbar>label{flex:1;min-width:125px}.library-toolbar select{width:100%}.library-toolbar>.text-button{margin-left:auto;font-size:11px}.density-control{display:none}.library-edition .pattern-grid,.library-edition .pattern-grid.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.library-edition .card-topline{margin:12px 11px 0}.library-edition .pattern-card h3{font-size:18px;margin:8px 11px 10px;line-height:1.25}.library-edition .card-foot{margin:0 11px;font-size:10px}.library-edition .card-foot svg{width:15px}.library-edition .card-category{font-size:8px}.library-edition .save-button{right:7px;top:7px;width:30px;height:30px}.library-edition .member-note{display:block;margin-top:30px}.library-edition .member-note .note-symbol{display:none}.library-edition .member-note button{margin-top:14px}.library-edition #pattern-dialog[open]{display:block;width:94vw;max-height:93dvh}.library-edition .detail-visual{padding:18px 18px 15px}.library-edition .detail-image{max-height:340px;aspect-ratio:1.18}.library-edition .detail-copy{padding:23px 20px}.library-edition .detail-copy h2{font-size:31px}.preview-controls{margin-top:8px}.library-edition #preview-caption{font-size:10px}.library-edition .mobile-dock{display:flex;justify-content:space-around;padding:8px 12px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--line)}.library-edition .mobile-dock button{min-height:44px}.library-edition .mobile-dock .dock-avatar{width:22px;height:22px;font-size:15px}.library-edition footer{font-size:10px;gap:15px}}
@media(prefers-reduced-motion:reduce){.library-edition *{scroll-behavior:auto!important;transition:none!important}}

.mobile-local-note{display:none}@media(max-width:800px){.mobile-local-note{display:block;font-size:10px;line-height:1.6;color:var(--muted);margin:0 0 14px}}

@media(max-width:800px){.library-edition .preview-count{max-width:none;text-align:left;white-space:nowrap}.library-edition .search-row .sort-field{flex:0 0 120px;max-width:none}.library-edition .search-row .mobile-category{flex:1;min-width:0;margin:0;display:flex}.library-edition .mobile-category>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.library-edition .compact-welcome{padding-bottom:18px;margin-bottom:18px}.library-edition .compact-welcome h1{font-size:30px}.library-edition main{padding-top:20px}.library-edition .shelf-heading{margin-bottom:16px}}
.library-edition .detail-image{padding:0}.library-edition .inspiration-image{display:block;height:auto;aspect-ratio:1}.library-edition .detail-image.zoomed .inspiration-image{height:auto;aspect-ratio:1}
