
:root{font-family:"Segoe UI",sans-serif;color:#15202b;background:linear-gradient(180deg,#f7f3ec 0%,#eef3f7 100%);line-height:1.5}
*{box-sizing:border-box}body{margin:0}.page-shell{max-width:1240px;margin:0 auto;padding:32px 20px 64px}.hero,.toolbar,.category-card,.app-card,.detail-card,.sidebar-card{padding:22px;border-radius:24px;background:rgba(255,255,255,.94);border:1px solid rgba(15,36,56,.08);box-shadow:0 16px 40px rgba(21,32,43,.08)}.hero{margin-bottom:22px}.hero h1,.category-toggle h2{margin:0}.hero p{margin:.5rem 0 0;max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;color:#9a4d1a;margin-bottom:10px}.alternatives-banner{position:relative;overflow:hidden;min-height:220px;border:1px solid rgba(9,29,74,.2);background:radial-gradient(circle at 18% 20%,rgba(255,215,64,.12),transparent 18%),radial-gradient(circle at 82% 18%,rgba(255,215,64,.1),transparent 16%),linear-gradient(135deg,rgba(10,43,122,.96),rgba(9,29,74,.94));box-shadow:0 22px 50px rgba(12,24,58,.18),inset 0 1px 0 rgba(255,255,255,.12)}.alternatives-banner .eyebrow,.alternatives-banner h1,.alternatives-banner p{position:relative;z-index:1}.alternatives-banner .eyebrow{color:rgba(255,214,96,.92)}.alternatives-banner h1{color:#f6f8ff;max-width:12ch}.alternatives-banner-copy{position:relative;z-index:1}.alternatives-banner-copy p:last-child{color:rgba(225,233,248,.9)}.alternatives-banner-stars{position:absolute;inset:0;pointer-events:none}.alternatives-banner-stars .star{position:absolute;width:10px;height:10px;border-radius:999px;background:rgba(255,214,96,.72);box-shadow:0 0 14px rgba(255,214,96,.28)}.alternatives-banner-stars .star-1{top:18%;left:78%}.alternatives-banner-stars .star-2{top:24%;left:84%}.alternatives-banner-stars .star-3{top:34%;left:88%}.alternatives-banner-stars .star-4{top:46%;left:89%}.alternatives-banner-stars .star-5{top:58%;left:86%}.alternatives-banner-stars .star-6{top:68%;left:80%}.alternatives-banner-stars .star-7{top:72%;left:71%}.alternatives-banner-stars .star-8{top:69%;left:61%}.alternatives-banner-stars .star-9{top:59%;left:54%}.alternatives-banner-stars .star-10{top:47%;left:52%}.alternatives-banner-stars .star-11{top:34%;left:56%}.alternatives-banner-stars .star-12{top:24%;left:65%}.toolbar{display:grid;grid-template-columns:minmax(260px,360px) minmax(260px,1fr);gap:18px;margin-bottom:22px}.toolbar-column{display:grid;gap:10px}.filter-toggle{border:none;cursor:pointer;padding:11px 16px;border-radius:999px;background:#0f2438;color:#f5f8fb;font-weight:700;justify-self:start}.filter-options{display:none;gap:10px;padding-top:10px}.filter-options.open{display:grid}.filter-checkbox{display:inline-flex;gap:10px;align-items:center;padding:10px 14px;border-radius:999px;background:#f7fafc;color:#26415e;font-weight:600}.search-input{width:100%;padding:11px 13px;border:1px solid #d5dde7;border-radius:14px;background:#fafcfe}.category-grid{display:grid;gap:18px}.category-card{background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(244,248,252,.94))}.category-toggle{width:100%;border:none;padding:0;background:transparent;cursor:pointer;text-align:left}.category-header{display:flex;justify-content:space-between;gap:12px;align-items:start}.category-header p,.app-card p,.detail-card p,.meta-muted{margin:6px 0 0;color:#586575}.category-header-actions{display:inline-flex;align-items:center;gap:10px}.selected-pill{padding:6px 10px;border-radius:999px;background:#eef4fb;color:#26415e;font-size:.9rem}.category-caret{width:36px;height:36px;display:grid;place-items:center;border-radius:999px;background:#0f2438;color:#f5f8fb;font-size:1.35rem}.category-panel{display:none;padding-top:18px}.category-card.open .category-panel{display:block}.app-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.app-card{display:grid;grid-template-columns:92px minmax(0,1fr);gap:16px}.thumb{width:92px;height:92px;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#eff4fa,#dfe9f5);display:grid;place-items:center;font-weight:800;color:#26415e}.thumb.large{width:132px;height:132px}.thumb img{width:100%;height:100%;object-fit:cover}.rank-pill{display:inline-flex;margin:0;padding:6px 10px;border-radius:999px;background:#fff3de;color:#9a4d1a;font-size:.84rem;font-weight:700}.dimension-grid{display:flex;flex-wrap:wrap;gap:10px}.dimension-grid span{color:#384553}.app-actions{display:flex;flex-wrap:wrap;gap:10px}.button-link{display:inline-block;border:none;text-decoration:none;cursor:pointer;padding:12px 18px;border-radius:999px;background:#ffb14a;color:#1c1c1c;font-weight:700}.button-link.secondary{background:#eef4fb;color:#26415e}.detail-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:18px}.detail-top{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start}.related-list{display:grid;gap:10px}.related-item{display:grid;gap:4px;padding:12px 14px;border-radius:16px;background:#f8fbfd;color:#15202b;text-decoration:none}.footer-note{margin-top:28px;color:#667689;font-size:.92rem}.empty-state{margin:0;color:#667689}a{color:#1b4f8a;text-decoration:none}@media (max-width:800px){.toolbar,.app-grid,.detail-layout,.detail-top,.app-card{grid-template-columns:1fr}.alternatives-banner{min-height:0}.alternatives-banner h1{max-width:none}.alternatives-banner-stars{opacity:.75}}
*{box-sizing:border-box}body{margin:0}.page-shell{max-width:1240px;margin:0 auto;padding:32px 20px 64px}.hero,.toolbar,.category-card,.app-card,.detail-card,.sidebar-card{padding:22px;border-radius:24px;background:rgba(255,255,255,.94);border:1px solid rgba(15,36,56,.08);box-shadow:0 16px 40px rgba(21,32,43,.08)}.hero{margin-bottom:22px}.hero h1,.category-toggle h2{margin:0}.hero p{margin:.5rem 0 0;max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;color:#9a4d1a;margin-bottom:10px}.alternatives-banner{position:relative;overflow:hidden;min-height:220px;border:1px solid rgba(9,29,74,.2);background:radial-gradient(circle at 18% 20%,rgba(255,215,64,.12),transparent 18%),radial-gradient(circle at 82% 18%,rgba(255,215,64,.1),transparent 16%),linear-gradient(135deg,rgba(10,43,122,.96),rgba(9,29,74,.94));box-shadow:0 22px 50px rgba(12,24,58,.18),inset 0 1px 0 rgba(255,255,255,.12)}.alternatives-banner .eyebrow,.alternatives-banner h1,.alternatives-banner p{position:relative;z-index:1}.alternatives-banner .eyebrow{color:rgba(255,214,96,.92)}.alternatives-banner h1{color:#f6f8ff;max-width:12ch}.alternatives-banner>p,.alternatives-banner-copy>p:last-child{color:rgba(225,233,248,.9)}.alternatives-banner-copy{position:relative;z-index:1}.alternatives-banner-stars{position:absolute;inset:0;pointer-events:none}.alternatives-banner-stars .star{position:absolute;width:10px;height:10px;border-radius:999px;background:rgba(255,214,96,.72);box-shadow:0 0 14px rgba(255,214,96,.28)}.alternatives-banner-stars .star-1{top:18%;left:78%}.alternatives-banner-stars .star-2{top:24%;left:84%}.alternatives-banner-stars .star-3{top:34%;left:88%}.alternatives-banner-stars .star-4{top:46%;left:89%}.alternatives-banner-stars .star-5{top:58%;left:86%}.alternatives-banner-stars .star-6{top:68%;left:80%}.alternatives-banner-stars .star-7{top:72%;left:71%}.alternatives-banner-stars .star-8{top:69%;left:61%}.alternatives-banner-stars .star-9{top:59%;left:54%}.alternatives-banner-stars .star-10{top:47%;left:52%}.alternatives-banner-stars .star-11{top:34%;left:56%}.alternatives-banner-stars .star-12{top:24%;left:65%}.toolbar{display:grid;grid-template-columns:minmax(260px,360px) minmax(260px,1fr);gap:18px;margin-bottom:22px}.toolbar-column{display:grid;gap:10px}.filter-toggle{border:none;cursor:pointer;padding:11px 16px;border-radius:999px;background:#0f2438;color:#f5f8fb;font-weight:700;justify-self:start}.filter-options{display:none;gap:10px;padding-top:10px}.filter-options.open{display:grid}.filter-checkbox{display:inline-flex;gap:10px;align-items:center;padding:10px 14px;border-radius:999px;background:#f7fafc;color:#26415e;font-weight:600}.search-input{width:100%;padding:11px 13px;border:1px solid #d5dde7;border-radius:14px;background:#fafcfe}.category-grid{display:grid;gap:18px}.category-card{background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(244,248,252,.94))}.category-toggle{width:100%;border:none;padding:0;background:transparent;cursor:pointer;text-align:left}.category-header{display:flex;justify-content:space-between;gap:12px;align-items:start}.category-header p,.app-card p,.detail-card p,.meta-muted{margin:6px 0 0;color:#586575}.selected-pill,.rank-pill,.score-pill{display:inline-flex;padding:5px 10px;border-radius:999px;font-size:.82rem;font-weight:700}.selected-pill{background:#eff6ff;color:#1e3a8a}.category-caret{display:grid;place-items:center;width:32px;height:32px;border-radius:999px;background:#0f2438;color:#f5f8fb}.app-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.app-card{display:grid;grid-template-columns:92px minmax(0,1fr);gap:16px;align-items:start;border:1px solid rgba(15,36,56,.08);background:rgba(255,255,255,.96)}.thumbnail-shell,.thumbnail-shell.large{border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#eff4fa,#dfe9f5);display:grid;place-items:center}.thumbnail-shell{width:92px;height:92px}.thumbnail-shell.large{width:132px;height:132px}.thumbnail-image{width:100%;height:100%;object-fit:cover}.thumbnail-placeholder{width:100%;height:100%;display:grid;place-items:center;font-weight:800;color:#26415e;background:linear-gradient(135deg,rgba(255,177,74,.22),rgba(38,65,94,.12)),#eef4fb}.app-card-body,.detail-card{display:grid;gap:12px}.app-card-header{display:flex;justify-content:space-between;gap:12px;align-items:start}.app-card-header h3{margin:4px 0}.app-card-actions{display:flex;flex-wrap:wrap;gap:10px}.secondary-link,.ghost-link,.detail-link{display:inline-flex;align-items:center;justify-content:center;border:none;cursor:pointer;padding:10px 16px;border-radius:999px;font-weight:700;text-decoration:none}.secondary-link{background:#f59e0b;color:#1c1c1c}.ghost-link{background:#eef4fb;color:#26415e}.score-pill{background:#dcfce7;color:#166534}.detail-hero{margin-bottom:20px}.detail-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:18px}.detail-top{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start}.related-list{display:grid;gap:10px}.related-item{display:grid;gap:4px;padding:12px 14px;border-radius:16px;background:#f8fbfd;color:#15202b;text-decoration:none}.footer-note{margin-top:28px;color:#667689;font-size:.92rem}.empty-state{margin:0;color:#667689}a{color:#1b4f8a;text-decoration:none}@media (max-width:800px){.toolbar,.app-grid,.detail-layout,.detail-top,.app-card{grid-template-columns:1fr}.alternatives-banner{min-height:0}.alternatives-banner h1{max-width:none}.alternatives-banner-stars{opacity:.75}}

/* Keep Search input fixed-height when filter list expands */
.toolbar {
	align-items: start;
}

.toolbar > :last-child {
	align-self: start;
}

.toolbar-column {
	align-content: start;
	align-items: start;
	grid-auto-rows: max-content;
}

.toolbar .search-input {
	height: 48px;
	min-height: 48px;
	max-height: 48px;
	align-self: start;
}

/* Match alternatives filter nav with audit filter format/colors */
.toolbar .filter-toggle {
	display: none;
}

.toolbar .filter-options {
	gap: 8px;
}

.toolbar .filter-checkbox {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 7px 12px;
	border: 1px solid #E2E8F0;
	background: #F8FAFC;
	border-radius: 999px;
	font-weight: 650;
	cursor: pointer;
}

.toolbar .filter-options {
	display: flex !important;
	flex-wrap: wrap;
	gap: 8px;
	padding-top: 0;
}

.toolbar .filter-checkbox input {
	display: none;
}

.toolbar .filter-checkbox:has(input:checked) {
	background: #0b2545;
	border-color: #0b2545;
	color: #ffffff;
}

/* Hard stop: never stretch search control with expanded filters */
.toolbar {
	align-items: start !important;
}

.toolbar > :last-child {
	align-self: start !important;
	grid-template-rows: auto min-content !important;
	height: auto !important;
}

.toolbar > :last-child .search-input {
	display: block !important;
	height: 48px !important;
	min-height: 48px !important;
	max-height: 48px !important;
}

/* Palette normalization: cool neutral surfaces + amber only for primary CTA */
html,
body {
	background: #F8FAFC !important;
}

.page-shell {
	background: transparent !important;
}

.hero:not(.alternatives-banner),
.toolbar,
.category-card,
.app-card,
.detail-card,
.sidebar-card {
	background: #FFFFFF !important;
	border-color: #E2E8F0 !important;
}

.alternatives-banner {
	background: radial-gradient(circle at 18% 20%, rgba(255, 215, 64, 0.18), transparent 18%), radial-gradient(circle at 82% 18%, rgba(255, 215, 64, 0.14), transparent 16%), linear-gradient(135deg, #0a2b7a, #091d4a) !important;
	border-color: rgba(9, 29, 74, 0.28) !important;
	box-shadow: 0 22px 50px rgba(12, 24, 58, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

.alternatives-banner .eyebrow {
	color: rgba(255, 214, 96, 0.95) !important;
}

.alternatives-banner h1 {
	color: #f6f8ff !important;
}

.alternatives-banner p {
	color: rgba(225, 233, 248, 0.92) !important;
}

.filter-checkbox,
.related-item,
.thumb,
.search-input {
	border-color: #E2E8F0 !important;
}

.search-input,
.filter-checkbox,
.related-item {
	background: #FFFFFF !important;
}

.button-link.secondary,
.ghost-link,
.detail-link {
	background: #F1F5F9 !important;
	color: #0f2438 !important;
}

.rank-pill {
	background: #EFF6FF !important;
	color: #1E3A8A !important;
}

/* Final toolbar layout: separate Filters/Search panels, visible toggle button, non-stacked chips */
.toolbar {
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	grid-template-columns: minmax(340px, 1.25fr) minmax(280px, 1fr) !important;
	align-items: start !important;
}

.toolbar-column {
	padding: 18px !important;
	border-radius: 18px !important;
	background: #FFFFFF !important;
	border: 1px solid #E2E8F0 !important;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06) !important;
	align-content: start !important;
	gap: 10px !important;
}

.toolbar .filter-toggle {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 42px !important;
	padding: 0 16px !important;
	border-radius: 999px !important;
	border: 1px solid #0b2545 !important;
	background: #0b2545 !important;
	color: #ffffff !important;
	font-weight: 700 !important;
	cursor: pointer !important;
	width: fit-content !important;
}

.toolbar .filter-options {
	display: none !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	padding-top: 4px !important;
}

.toolbar .filter-options.open {
	display: flex !important;
}

.toolbar .filter-checkbox {
	width: auto !important;
	flex: 0 0 auto !important;
	white-space: nowrap !important;
	position: relative !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

.toolbar .filter-checkbox span {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 39px !important;
	padding: 7px 14px !important;
	border-radius: 999px !important;
	border: 1px solid #cbd5e1 !important;
	background: #f8fafc !important;
	color: #123b6b !important;
	font-weight: 700 !important;
}

.toolbar .filter-checkbox input:checked + span {
	background: #0b2545 !important;
	border-color: #0b2545 !important;
	color: #ffffff !important;
}

.toolbar .filter-checkbox input {
	position: absolute !important;
	opacity: 0 !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	pointer-events: none !important;
}

@media (max-width: 800px) {
	.toolbar {
		grid-template-columns: 1fr !important;
	}
}
