.location-button{max-width:180px;overflow:hidden;padding:8px 0;border:0;background:transparent;color:var(--green);cursor:pointer;font:12px Arial;text-overflow:ellipsis;white-space:nowrap}.search-row{display:flex;align-items:center;gap:12px;width:min(100%,650px)}.search-row .location-button{display:flex;flex:0 0 175px;align-items:center;gap:7px;min-width:0;padding:12px 13px;overflow:hidden;border:1px solid var(--line);border-radius:5px;background:var(--paper);text-align:left}.search-row .location-button>span:last-child{overflow:hidden;text-overflow:ellipsis}.location-pin{display:grid;flex:0 0 20px;place-items:center;width:20px;height:20px;border:1px solid var(--coral);border-radius:50%;color:var(--coral);font-size:15px}.search-row .search-box{flex:1;min-width:0;max-width:none}.quick-filter-row{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:18px 0 0;color:var(--muted);font:700 11px Arial}.quick-filter-row button{white-space:nowrap;padding:7px 12px;border:1px solid var(--line);border-radius:16px;background:transparent;color:var(--muted);cursor:pointer;font:11px Arial}.quick-filter-row button.selected{border-color:var(--coral);background:var(--coral);color:white}.home-with-sidebar{display:flex;max-width:1240px;margin:auto;gap:0}.category-sidebar{width:240px;padding:30px 0;border-right:1px solid var(--line);flex-shrink:0}.sidebar-heading{padding:0 20px 20px;font-size:16px;font-weight:600;color:var(--ink);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--green);margin-bottom:12px}.sidebar-list{display:flex;flex-direction:column;gap:4px}.sidebar-category{width:100%;padding:12px 20px;border:0;background:transparent;color:var(--muted);text-align:left;cursor:pointer;font:14px Arial;transition:background .2s,color .2s}.sidebar-category:hover{background:#f0f2f5;color:var(--ink)}.sidebar-category.active{background:#e8f0ff;color:var(--green);font-weight:600;border-left:4px solid var(--green);padding-left:16px}.main-content{flex:1;padding:30px 40px;min-width:0}.main-content .section-heading{margin-bottom:24px}@media (max-width:960px){.home-with-sidebar{flex-direction:column}.category-sidebar{width:100%;border-right:0;border-bottom:1px solid var(--line);padding:20px 0}.sidebar-list{display:flex;flex-direction:row;gap:8px;padding:0 20px;overflow-x:auto}.sidebar-category{white-space:nowrap;flex-shrink:0;padding:8px 14px;border-radius:20px;background:var(--paper);border:1px solid var(--line)!important}.sidebar-category.active{background:var(--green);color:white;border-color:var(--green)!important}.main-content{padding:20px}}@media (max-width:760px){.sidebar-list{padding:0 16px}.sidebar-category{padding:6px 12px;font-size:12px}.main-content{padding:16px}}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;padding-top:20px}.book-card{position:relative;min-width:0;background:var(--paper);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.08);transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column;height:100%}.book-card:hover{transform:translateY(-6px);box-shadow:0 10px 25px rgba(0,0,0,.15)}.cover{position:relative;display:flex;height:260px;padding:0;overflow:hidden;flex-direction:column;justify-content:flex-end;color:#fff;background:linear-gradient(135deg,#2454d6,#1a3fa0);border-radius:12px 12px 0 0}.cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.cover-pattern,.cover>span{display:none}.cover small{z-index:1;font:700 10px Arial;letter-spacing:.5px;text-transform:uppercase;padding:8px 10px;background:rgba(0,0,0,.5);backdrop-filter:blur(4px);border-radius:0}.save-button{position:absolute;right:10px;top:10px;z-index:2;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.96);color:var(--green);cursor:pointer;font:700 20px Arial;transition:all .2s;box-shadow:0 2px 8px rgba(0,0,0,.15);display:grid;place-items:center}.save-button:hover{transform:scale(1.12);background:white;box-shadow:0 4px 12px rgba(0,0,0,.2)}.save-button.saved{background:var(--coral);color:white}.book-info{padding:14px;display:flex;flex-direction:column;flex:1}.book-category{margin:0 0 6px;color:var(--coral);font:700 10px Arial;letter-spacing:.5px;text-transform:uppercase}.book-info h3{margin:0 0 6px;font-size:15px;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3;color:var(--ink)}.book-author,.book-info h3{overflow:hidden;text-overflow:ellipsis}.book-author{margin:0 0 auto;color:var(--muted);font:12px Arial;white-space:nowrap;flex-grow:1}.book-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:10px;margin-top:10px}.book-footer strong{color:var(--green);font:700 15px Arial}.book-footer a{color:var(--muted);font:12px Arial;text-decoration:none;transition:color .2s;cursor:pointer}.book-footer a:hover{color:var(--green);font-weight:600}@media (max-width:1024px){.book-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px}}@media (max-width:760px){.book-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.cover{height:200px}}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:24px;background:#17251fe8}.location-modal{width:min(560px,100%);padding:30px;background:var(--paper);box-shadow:0 20px 60px #24312d33}.modal-heading{display:flex;align-items:start;justify-content:space-between}.modal-heading h2,.preference-modal h2{margin:0;font-size:32px;font-weight:500}.modal-heading>button{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:22px}.modal-copy{max-width:430px;margin:10px 0 22px;color:var(--muted);font:13px/1.5 Arial}.location-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.location-grid input,.location-grid select,.preference-modal input,.preference-modal select{min-width:0;width:100%;padding:12px;border:1px solid var(--line);border-radius:3px;background:white;color:var(--ink);font:13px Arial}.location-grid select:disabled{color:#a9aea8;background:#f2f1eb}.preference-modal label{display:grid;gap:7px;margin:17px 0;color:var(--muted);font:700 11px Arial;text-transform:uppercase;letter-spacing:.5px}.preference-modal label input,.preference-modal label select{margin:0;font-weight:400;text-transform:none;letter-spacing:0}.modal-actions{display:flex;align-items:center;justify-content:space-between;margin-top:24px}.exact-preference-modal{width:min(680px,100%);max-height:min(760px,calc(100vh - 48px));overflow-y:auto;padding:32px;border-radius:22px;background:var(--paper);color:var(--ink);box-shadow:0 24px 70px #07120d99}.sheet-handle{width:40px;height:4px;margin:0 auto 20px;border-radius:3px;background:#c9cdc7}.preference-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.preference-header h2{margin:0;font-size:20px;font-weight:700}.preference-header p{margin:4px 0 0;color:var(--muted);font:12px Arial}.preference-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#e8f0ed;color:var(--green);font-size:25px}.preference-field{margin-bottom:20px}.preference-field h3{margin:0 0 10px;color:var(--ink);font:700 14px Arial}.choice-grid{display:flex;flex-wrap:wrap;gap:10px}.choice-grid button{padding:9px 12px;border:1px solid #d8ddd8;border-radius:18px;background:#fff;color:var(--ink);cursor:pointer;font:600 12px Arial}.choice-grid button.selected{border-color:var(--green);background:var(--green);color:white}.preference-input{display:grid;gap:8px;margin-bottom:20px;color:var(--ink);font:700 14px Arial}.preference-input input{padding:13px 14px;border:1px solid #d8ddd8;border-radius:10px;outline:0;background:#f8faf8;font:13px Arial}@media (max-width:760px){.location-button{max-width:130px}.search-row{gap:8px}.search-row .location-button{flex-basis:122px;padding:11px 9px;font-size:11px}.search-row .search-box{padding-left:10px}.search-row .search-box button{padding:11px 10px}.exact-preference-modal,.location-modal{padding:22px}.location-grid{grid-template-columns:1fr}.modal-heading h2,.preference-modal h2{font-size:27px}}.new-hero-section{background:linear-gradient(135deg,#10b981,#059669 50%,#047857);padding:50px 20px;color:white}.hero-container{max-width:1240px;margin:auto;display:grid;gap:40px}.hero-content{display:flex;flex-direction:column;gap:20px}.hero-content h1{margin:0;font-size:42px;font-weight:800;line-height:1.2;letter-spacing:-1px}.hero-content p{margin:0;font-size:16px;opacity:.95;max-width:500px}.featured-categories{display:flex;flex-direction:column;gap:20px}.featured-categories h2{margin:0;font-size:24px;font-weight:600}.category-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.category-card{padding:24px;border:0;border-radius:12px;background:rgba(255,255,255,.15);backdrop-filter:blur(10px);color:white;cursor:pointer;text-align:center;transition:all .3s;display:flex;flex-direction:column;align-items:center;gap:12px;border:2px solid rgba(255,255,255,.3)}.category-card:hover{background:rgba(255,255,255,.25);border-color:rgba(255,255,255,.6);transform:translateY(-4px)}.card-icon{width:60px;height:60px;border-radius:12px;background:rgba(255,255,255,.2);display:grid;place-items:center;font-size:28px;font-weight:700}.card-text{font-size:16px;font-weight:600}@media (max-width:960px){.hero-content h1{font-size:32px}.featured-categories{gap:16px}.category-cards-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}@media (max-width:760px){.new-hero-section{padding:30px 16px}.hero-container{gap:30px}.hero-content h1{font-size:24px}.hero-content p{font-size:14px}.category-cards-grid{grid-template-columns:repeat(2,1fr);gap:12px}.category-card{padding:16px}.card-icon{width:50px;height:50px;font-size:24px}.card-text{font-size:14px}}