/* Sleeple UX/navigation layer */
.sleeple-primary-nav{display:flex;align-items:center;gap:6px;list-style:none;margin:0;padding:0}
.sleeple-primary-nav a{display:inline-flex;align-items:center;padding:9px 11px;border-radius:10px;text-decoration:none;color:var(--text-heading,#17223b);font-weight:600;font-size:.92rem;white-space:nowrap}
.sleeple-primary-nav a:hover,.sleeple-primary-nav a[aria-current="page"]{background:var(--brand-light,#eef3ff);color:var(--brand-blue,#3157c8)}
.sleeple-primary-nav .nav-start{background:var(--brand-blue,#3157c8);color:#fff}
.sleeple-primary-nav .nav-start:hover{background:#2549ad;color:#fff}
.sleeple-brief{margin:18px 0 28px;padding:18px 20px;border:1px solid #dbe5f5;border-left:4px solid var(--brand-blue,#3157c8);border-radius:14px;background:#f7f9ff;color:var(--text,#334155);line-height:1.65}
.sleeple-brief strong{display:block;margin-bottom:5px;color:var(--text-heading,#17223b)}
.library-tools{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:14px;align-items:center;margin:0 0 18px}
.library-search{position:relative}
.library-search input{width:100%;height:48px;border:1px solid var(--border-light,#dbe3f1);border-radius:13px;padding:0 16px 0 42px;background:var(--bg-card,#fff);color:var(--text-heading,#17223b);font:500 15px/1 Inter,system-ui,sans-serif;outline:none}
.library-search input:focus{border-color:#6687dc;box-shadow:0 0 0 3px rgba(79,110,202,.12)}
.library-search span{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:18px;pointer-events:none}
.library-count{font-size:.9rem;font-weight:700;color:var(--text-muted,#64748b);white-space:nowrap}
.problem-filter{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}
.problem-filter button{border:1px solid var(--border-light,#dbe3f1);background:var(--bg-card,#fff);color:var(--text-heading,#17223b);padding:8px 12px;border-radius:999px;cursor:pointer;font-weight:600}
.problem-filter button.active,.problem-filter button:hover{background:var(--brand-blue,#3157c8);border-color:var(--brand-blue,#3157c8);color:#fff}
.start-here{padding:118px 0 72px;background:linear-gradient(180deg,var(--bg-soft,#f7f9fc),#fff)}
.start-here .intro{max-width:780px;margin:0 auto 38px;text-align:center}
.start-here .intro p{font-size:1.08rem;color:var(--text-muted,#64748b);line-height:1.7}
.need-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.need-card{display:flex;flex-direction:column;gap:10px;padding:22px;border:1px solid #e3e9f3;border-radius:18px;background:#fff;text-decoration:none;color:inherit;box-shadow:0 8px 28px rgba(15,23,42,.05);transition:.18s ease}
.need-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(15,23,42,.09);border-color:#b8c9ee}
.need-card .need-icon{font-size:1.65rem}
.need-card h2{font-size:1.12rem;margin:0;color:var(--text-heading,#17223b)}
.need-card p{margin:0;color:var(--text-muted,#64748b);line-height:1.55;font-size:.94rem}
.need-card .need-action{margin-top:auto;color:var(--brand-blue,#3157c8);font-weight:700}
.start-tools{margin-top:34px;padding:24px;border-radius:18px;background:#eef3ff}
.start-tools h2{margin-top:0}
.start-tools-links{display:flex;gap:10px;flex-wrap:wrap}
.start-tools-links a{display:inline-flex;padding:10px 14px;border-radius:10px;background:#fff;text-decoration:none;font-weight:700;color:var(--brand-blue,#3157c8)}
[data-theme="dark"] .sleeple-brief,[data-theme="dark"] .need-card,[data-theme="dark"] .library-search input,[data-theme="dark"] .problem-filter button{background:#172033;color:#e2e8f0;border-color:#334155}
[data-theme="dark"] .need-card h2,[data-theme="dark"] .sleeple-brief strong{color:#f8fafc}
[data-theme="dark"] .start-here{background:linear-gradient(180deg,#111827,#0f172a)}
@media(max-width:1050px){.sleeple-primary-nav a{padding:8px 8px;font-size:.86rem}.need-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.main-nav .sleeple-primary-nav{display:none}.library-tools{grid-template-columns:1fr}.library-count{white-space:normal}.need-grid{grid-template-columns:1fr}.start-here{padding-top:92px}.sleeple-brief{margin:14px 0 22px;padding:15px 16px}}
