.app-carousel{display:flex;align-items:center;gap:14px;position:relative}
#appGrid.app-grid{display:flex;flex:1;min-width:0;gap:18px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#b69a54 transparent;padding:6px 2px 18px}
#appGrid .app-card{flex:0 0 calc((100% - 36px)/3);min-width:250px;scroll-snap-align:start;padding:16px;overflow:hidden}
.app-hero-art{position:relative;width:100%;height:222px;display:grid;place-items:center;overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 75%,#b69a54);border-radius:15px;background:radial-gradient(ellipse at 50% 82%,#b69a5426,transparent 65%),linear-gradient(145deg,color-mix(in srgb,var(--card) 86%,#b69a54),var(--soft));isolation:isolate}
.app-hero-art>img{width:78%;height:88%;object-fit:contain;filter:drop-shadow(0 12px 14px #1116);margin:0}
.app-hero-art .app-live-screen{position:absolute;inset:12px auto auto 50%;width:218px;height:545px;max-width:none;object-fit:cover;border:5px solid #17261e;border-radius:25px;background:#17261e;transform:translateX(-50%) scale(.49);transform-origin:top center;box-shadow:0 18px 42px #10150f55;pointer-events:none}
.app-card .status{margin-top:15px}
#appGrid .app-card h3{margin:8px 0 5px;font-size:20px}
#appGrid .app-card>p{margin:0 0 10px;min-height:48px}
.app-feature-list{list-style:none;padding:0;margin:0 0 12px;display:grid;gap:5px;color:var(--muted);font-size:11px;line-height:1.45}
.app-feature-list li{display:flex;align-items:flex-start;gap:8px}
.app-feature-list li:before{content:"✦";color:#b69a54;font-size:9px;margin-top:2px}
.carousel-arrow{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border:1px solid #b69a5470;border-radius:50%;background:linear-gradient(145deg,#596447,#29372c);color:#f5e3ae;font:26px/1 Georgia,serif;box-shadow:0 5px 16px #10170f2e;transition:transform .18s,filter .18s}
.carousel-arrow:hover{filter:brightness(1.16);transform:translateY(-2px)}
.carousel-arrow:active{transform:scale(.95)}
.dark .carousel-arrow{background:linear-gradient(145deg,#b69a54,#75613a);border-color:#e0c678;color:#18251c}
.empty{flex:1 0 100%;min-width:100%}
@media(max-width:900px){#appGrid .app-card{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:720px){.app-carousel{gap:7px;margin-inline:-7px}.carousel-arrow{flex-basis:36px;width:36px;height:36px;font-size:22px}#appGrid.app-grid{gap:12px;padding-inline:2px}#appGrid .app-card{flex-basis:min(78vw,330px);min-width:0;padding:13px}.app-hero-art{height:210px}.app-hero-art .app-live-screen{transform:translateX(-50%) scale(.46)}#appGrid .app-card h3{font-size:18px}#appGrid .app-card>p{font-size:12px}}
@media(prefers-reduced-motion:reduce){#appGrid.app-grid{scroll-behavior:auto}.carousel-arrow{transition:none}}

/* Large application introduction carousel */
.featured-carousel{position:relative;padding-top:112px}
.featured-controls{position:absolute;z-index:4;top:22px;right:46px;display:flex;align-items:center;gap:17px}
.featured-search{display:flex;align-items:center;gap:8px;width:min(265px,28vw);height:42px;padding:0 14px;border:1px solid color-mix(in srgb,var(--line) 55%,#b69a54);border-radius:24px;background:color-mix(in srgb,var(--card) 78%,transparent);color:var(--muted)}
.featured-search>span{font:26px/1 Georgia,serif;color:#b69a54}
.featured-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:12px}
.featured-search input::placeholder{color:var(--muted)}
.featured-control-row{display:flex;align-items:center;gap:11px;color:var(--muted);font-size:11px;letter-spacing:.12em;white-space:nowrap}
.featured-arrow{width:42px;height:42px;flex-basis:42px}
.featured-live-screen{width:270px;height:490px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);overflow:hidden;border:9px solid #1c2c22;border-radius:36px;background:#1c2c22;box-shadow:0 24px 50px #1118}
.featured-visual .featured-live-screen{width:430px;height:820px;left:50%;top:50%;transform:translate(-50%,-50%) scale(.59);transform-origin:center center}
.featured-visual:has(.featured-live-screen){min-height:510px;overflow:hidden;border-radius:28px;background:radial-gradient(ellipse,#d6ead970,transparent 70%)}
.featured-visual:has(.featured-live-screen) .featured-rosette{z-index:0;opacity:.7;pointer-events:none}
.featured-visual:has(.featured-live-screen) .featured-live-screen{z-index:1}
.featured-visual.preview-failed:after{content:"";position:absolute;inset:20% 25%;background:url("assets/apps/01-dhikr-counter-olive-gold.webp") center/contain no-repeat;opacity:.45}
.dark .featured-search{background:#17251f;border-color:#756b4b}
.dark .featured-search input{color:#f2efe5}
@media(max-width:1050px){.featured-carousel{padding-top:100px}.featured-controls{right:22px}.featured-search{width:220px}.featured{gap:36px}}
@media(max-width:720px){.featured-carousel{padding-top:125px}.featured-controls{top:16px;left:0;right:0;display:flex;justify-content:space-between;gap:8px}.featured-search{width:min(58vw,270px);height:40px}.featured-control-row{gap:6px}.featured-arrow{width:36px;height:36px;flex-basis:36px}.featured-visual:has(.featured-live-screen){grid-row:2;min-height:490px}.featured-visual .featured-live-screen{transform:translate(-50%,-50%) scale(.55)}.featured-copy{grid-row:1}.featured-copy .feature-pills{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.featured-arrow{transition:none}}

/* Shared isometric phone mockup with live app home screens */
.featured-device-stage{position:relative;width:min(100%,370px);aspect-ratio:2/3;isolation:isolate;filter:drop-shadow(0 16px 28px #07150d55)}
.featured-device-stage .device-screen{position:absolute;z-index:2;left:26.3%;top:7.6%;width:50.7%;height:84%;border:0;border-radius:16px;overflow:hidden;background:#17251f;object-fit:cover;clip-path:polygon(0 0,100% 4.5%,100% 96%,0 100%);}
.featured-device-stage .device-mockup{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:contain;mix-blend-mode:screen;pointer-events:none}
.featured-visual:has(.featured-device-stage){min-height:560px;overflow:visible;isolation:isolate}
.featured-visual:has(.featured-device-stage) .featured-rosette{z-index:-1;opacity:.34;pointer-events:none}
.featured-device-stage .device-screen:focus{outline:0}
@media(max-width:720px){.featured-visual:has(.featured-device-stage){min-height:510px}.featured-device-stage{width:min(100%,330px)}}
