:root{--bg-0:#0b0a12;--bg-1:#14121e;--surface-1:#191724;--surface-2:#221f31;--surface-3:#2d2940;--border-1:#ffffff12;--border-2:#ffffff21;--text-1:#f4f2fa;--text-2:#a9a6bd;--text-3:#6f6c85;--r-s:10px;--r-m:14px;--r-l:20px;--r-pill:999px;--shadow-1:0 1px 2px #00000080, 0 6px 20px #00000059;--shadow-pop:0 12px 40px #0000008c;--dur-fast:.16s;--dur-med:.3s;--dur-slow:.55s;--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{overscroll-behavior:none;touch-action:pan-y;height:100%;margin:0;padding:0}body{background:var(--bg-0);color:var(--text-1);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;font-family:Vazirmatn,system-ui,sans-serif;position:fixed;inset:0;overflow:hidden}body.landing-mode{-webkit-user-select:auto;user-select:auto;position:static;overflow:auto}#root{height:100%}button{touch-action:manipulation;font-family:inherit}input,textarea,[contenteditable]{-webkit-user-select:text;user-select:text}::selection{background:#8b5cf659}:focus-visible{outline:2px solid var(--accent,#8b5cf6);outline-offset:2px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:4px}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur-med:0s;--dur-slow:0s}.aurora i,.logo-path,.brand-name,.empty-art .ea-front,.empty-art .ea-spark{animation:none!important}.sheet,.sheet-overlay,.toast,.tc-circle,.tc-check{animation-duration:10ms!important;animation-delay:0s!important}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app{--accent-hi:color-mix(in oklab, var(--accent) 72%, white);--accent-lo:color-mix(in oklab, var(--accent) 65%, #241a4d);--accent-soft:color-mix(in srgb, var(--accent) 16%, transparent);--accent-glow:color-mix(in srgb, var(--accent) 38%, transparent);--accent-grad:linear-gradient(135deg, var(--accent-hi), var(--accent) 55%, var(--accent-lo));--glow:0 0 0 1px var(--accent-soft), 0 4px 18px var(--accent-glow);max-width:560px;height:100dvh;padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);flex-direction:column;margin:0 auto;display:flex;overflow:hidden}.aurora{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.aurora i{opacity:.5;border-radius:50%;width:55vmax;height:55vmax;position:absolute}.aurora i:first-child{top:-20vmax;background:radial-gradient(circle at center, var(--accent-glow), transparent 62%);inset-inline-start:-12vmax}.aurora i:nth-child(2){bottom:-22vmax;background:radial-gradient(circle,#7e14ff29,#0000 60%);inset-inline-end:-14vmax}.aurora i:nth-child(3){top:30%;background:radial-gradient(circle,#47bfff1a,#0000 60%);width:40vmax;height:40vmax;inset-inline-start:28%}.topbar{flex-shrink:0;justify-content:space-between;align-items:center;gap:6px;padding:10px 14px;display:flex}.pill-btn{background:var(--accent-grad);color:#fff;border-radius:var(--r-pill);cursor:pointer;touch-action:manipulation;box-shadow:var(--glow);transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);white-space:nowrap;border:none;align-items:center;gap:6px;padding:9px 15px;font-size:12.5px;font-weight:700;display:inline-flex}.pill-btn:active,.chip:active,.toggle:active,.tab:active,.swatch:active,.sheet-item:active{transform:scale(.95)}.pill-btn.soft{background:var(--surface-2);color:var(--text-1);border:1px solid var(--border-2);box-shadow:inset 0 1px #ffffff0d}.pill-btn.ghost{color:var(--text-1);border:1px solid var(--border-2);box-shadow:none;background:0 0}.pill-btn.icon-only{padding:9px 11px}.brand{white-space:nowrap;align-items:center;gap:7px;display:flex}.logo{display:block}.logo-path{stroke-dasharray:100;animation:logoDraw 1.6s var(--ease-out) both}@keyframes logoDraw{0%{stroke-dashoffset:100px;fill-opacity:0}60%{stroke-dashoffset:0;fill-opacity:0}to{stroke-dashoffset:0;fill-opacity:1}}.brand-name{letter-spacing:.4px;background:linear-gradient(90deg, #fff 20%, var(--accent-hi) 50%, #fff 80%);color:#0000;animation:shimmer 2s var(--ease-out) .5s backwards;background-size:250% 100%;-webkit-background-clip:text;background-clip:text;font-size:15px;font-weight:800}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-80% 0}}.header-actions{align-items:center;gap:6px;display:flex}.stage{flex:1;justify-content:center;min-height:0;padding:0 14px;display:flex;position:relative}.stage:before{content:"";border:1px solid var(--border-1);transition:box-shadow var(--dur-med) var(--ease-out);pointer-events:none;background:#110f1a80;border-radius:18px;position:absolute;inset:0 14px;box-shadow:inset 0 1px #ffffff08}.stage:focus-within:before{box-shadow:inset 0 1px 0 #ffffff08, var(--glow)}.stage-inner{border-radius:18px;flex:1;justify-content:center;align-items:center;padding:24px;display:flex;position:relative;overflow:hidden}.bg-layer{pointer-events:none}.text-canvas{overflow-wrap:break-word;white-space:pre-wrap;cursor:text;outline:none;width:100%;max-height:100%}.text-layer{white-space:nowrap;cursor:move;-webkit-user-select:none;user-select:none;touch-action:none;z-index:2;padding:4px 8px;position:absolute}.text-layer.active{border-radius:6px;outline:1.5px dashed #fff9}.layer-del,.layer-rotate-handle{color:#fff;cursor:pointer;background:#000000a6;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:absolute;top:-14px}.layer-del{inset-inline-end:-14px}.layer-rotate-handle{cursor:grab;inset-inline-start:-14px}.layer-resize-handle{bottom:-14px;inset-inline-end:-14px;color:#fff;cursor:pointer;background:#000000a6;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex;position:absolute;top:auto}.image-layer{padding:0;display:flex}.image-layer img{pointer-events:none;border-radius:4px;width:100%;height:auto;display:block}.add-layer-btn{top:8px;border-radius:var(--r-pill);color:#fff;cursor:pointer;z-index:3;touch-action:manipulation;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:#0a08128c;border:1px solid #ffffff24;align-items:center;gap:4px;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex;position:absolute;inset-inline-end:22px}.add-image-layer-btn{cursor:pointer;top:48px}.text-canvas:empty:before{content:attr(data-placeholder);opacity:.55}.canvas-rail{top:50%;z-index:2;flex-direction:column;align-items:center;gap:12px;display:flex;position:absolute;inset-inline-start:22px;transform:translateY(-50%)}.rail-btn{color:#fff;cursor:pointer;touch-action:manipulation;width:36px;height:36px;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);background:#0a08128c;border:1px solid #ffffff24;border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.rail-btn.on{background:var(--accent);box-shadow:var(--glow);color:#fff;border-color:#0000}.rail-btn.danger{background:#c828288c}.canvas-size-slider{top:50%;z-index:2;flex-direction:column;align-items:center;gap:10px;height:55%;display:flex;position:absolute;inset-inline-end:22px;transform:translateY(-50%)}.canvas-size-slider .val{color:#fff;text-shadow:0 1px 4px #00000080;font-size:13px;font-weight:700}.canvas-size-slider input[type=range]{writing-mode:vertical-lr;accent-color:#fff;direction:rtl;flex:1;width:4px}.controls{background:color-mix(in srgb, var(--surface-1) 90%, transparent);border-top:1px solid var(--border-1);padding-bottom:env(safe-area-inset-bottom);border-radius:22px 22px 0 0;flex-shrink:0;box-shadow:inset 0 1px #ffffff0a,0 -12px 30px #00000059}.tabs{gap:6px;padding:10px 12px 0;display:flex;position:relative;overflow-x:auto}.tab{z-index:1;color:var(--text-2);border-radius:var(--r-pill);cursor:pointer;transition:color var(--dur-med) var(--ease-out), transform var(--dur-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;align-items:center;gap:6px;padding:8px 13px;font-size:13.5px;display:flex;position:relative}.tab.active{color:#fff;font-weight:700}.tab-indicator{border-radius:var(--r-pill);background:color-mix(in srgb, var(--accent) 22%, var(--surface-2));width:0;height:calc(100% - 10px);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent);transition:transform var(--dur-med) var(--ease-spring), width var(--dur-med) var(--ease-spring);pointer-events:none;position:absolute;top:10px;left:0}.panel{min-height:96px;padding:12px 12px 16px}.panel>*{animation:panelIn var(--dur-slow) var(--ease-out) backwards}.panel>:nth-child(2){animation-delay:50ms}.panel>:nth-child(3){animation-delay:90ms}.panel>:nth-child(n+4){animation-delay:.13s}@keyframes panelIn{0%{opacity:0;transform:translateY(10px)}}.chip-row{gap:10px;padding:6px 2px;display:flex;overflow-x:auto}.chip-row.sub-row{gap:6px;padding-bottom:10px}.pill-tab{background:var(--surface-2);color:var(--text-2);border-radius:var(--r-pill);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);border:1px solid #0000;flex-shrink:0;padding:6px 12px;font-size:12px}.pill-tab.active{background:var(--accent);color:#fff;box-shadow:var(--glow);font-weight:700}.settings-label{color:var(--text-2);margin:14px 2px 8px;font-size:12.5px}.chip{background:var(--surface-2);border:1.5px solid var(--border-1);border-radius:var(--r-m);color:var(--text-1);cursor:pointer;min-width:64px;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);flex-direction:column;flex-shrink:0;align-items:center;gap:4px;padding:10px 14px;font-size:18px;display:flex;position:relative}.chip.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 14px var(--accent-soft);animation:pop var(--dur-med) var(--ease-spring)}.chip.selected:after,.swatch.selected:after{content:"";top:-6px;background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 13 4 4 10-10'/%3E%3C/svg%3E") center / 9px no-repeat;width:17px;height:17px;animation:checkPop var(--dur-med) var(--ease-spring) both;z-index:1;border-radius:50%;position:absolute;inset-inline-start:-6px;box-shadow:0 2px 6px #0006}@keyframes checkPop{0%{transform:scale(0)}}@keyframes pop{0%{transform:scale(.94)}55%{transform:scale(1.05)}to{transform:scale(1)}}.chip-label{color:var(--text-2);font-size:10.5px}.template-chip{justify-content:flex-end;min-width:78px;min-height:54px}.template-chip .chip-label{color:#fff;text-shadow:0 1px 6px #000000a6;font-size:11.5px}.font-chip{position:relative}.font-chip.loading{opacity:.6}.font-chip .font-loader{background:var(--surface-2);border-radius:var(--r-m);z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.font-chip .font-loader svg{color:var(--accent);animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.del-font{top:-6px;color:#fff;cursor:pointer;z-index:1;background:#0009;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;display:flex;position:absolute;inset-inline-end:-6px}.upload-chip{cursor:pointer}.donate-text{color:var(--text-2);padding:0 4px 16px;font-size:13.5px;line-height:1.7}.swatch{border-radius:var(--r-m);cursor:pointer;width:44px;height:44px;transition:transform var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);border:2px solid #ffffff1a;flex-shrink:0;position:relative}.swatch.selected{box-shadow:0 0 0 2px var(--accent), 0 0 16px var(--accent-glow);animation:pop var(--dur-med) var(--ease-spring);border-color:#fff}.swatch.image-swatch{background-position:50%;background-size:cover}.swatch.upload-chip{background:var(--surface-2);border:1.5px dashed var(--border-2);color:var(--text-2);justify-content:center;align-items:center;display:flex}.custom-swatch{background:conic-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red);justify-content:center;align-items:center;display:flex;overflow:hidden}.custom-swatch input{opacity:0;cursor:pointer;width:100%;height:100%}.style-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.toggle{background:var(--surface-2);border:1.5px solid var(--border-1);border-radius:var(--r-s);color:var(--text-1);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;gap:6px;padding:10px 6px;font-size:13px;display:flex}.toggle.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 12px var(--accent-soft);color:#fff;animation:pop var(--dur-med) var(--ease-spring)}.layout-panel{flex-direction:column;gap:12px;display:flex}.row{color:var(--text-2);grid-template-columns:70px 1fr 38px;align-items:center;gap:8px;font-size:13px;display:grid}.row input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:26px}.row input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--accent-hi), var(--accent) var(--p,50%), var(--surface-3) var(--p,50%));border-radius:3px;height:6px}[dir=rtl] .row input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to left, var(--accent-hi), var(--accent) var(--p,50%), var(--surface-3) var(--p,50%))}.row input[type=range]::-webkit-slider-thumb{appearance:none;width:18px;height:18px;box-shadow:0 0 0 3px var(--accent-soft), 0 2px 8px #00000080;transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);background:#fff;border:none;border-radius:50%;margin-top:-6px}.row input[type=range]:active::-webkit-slider-thumb{box-shadow:0 0 0 5px var(--accent-glow), 0 2px 10px #00000080;transform:scale(1.25)}.row input[type=range]::-moz-range-track{background:var(--surface-3);border-radius:3px;height:6px}.row input[type=range]::-moz-range-progress{background:linear-gradient(90deg, var(--accent-hi), var(--accent));border-radius:3px;height:6px}.row input[type=range]::-moz-range-thumb{width:18px;height:18px;box-shadow:0 0 0 3px var(--accent-soft), 0 2px 8px #00000080;background:#fff;border:none;border-radius:50%}.val{text-align:center;color:var(--text-3);font-variant-numeric:tabular-nums;font-size:12px}.align-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.sheet-overlay{-webkit-backdrop-filter:blur(6px);z-index:50;background:#05040a99;align-items:flex-end;animation:.25s ease-out both fadeIn;display:flex;position:fixed;inset:0}.sheet-overlay.closing{animation:.22s ease-in both fadeOut}.sheet{background:linear-gradient(var(--surface-1), var(--bg-1));border:1px solid var(--border-2);width:100%;max-width:560px;padding:4px 16px calc(28px + env(safe-area-inset-bottom));box-shadow:var(--shadow-pop);animation:sheetIn .5s var(--ease-spring) backwards;transition:transform .35s var(--ease-spring);border-bottom:none;border-radius:24px 24px 0 0;margin:0 auto}.sheet.closing{animation:.25s ease-in forwards sheetOut}.sheet.tall{max-height:80vh;overflow-y:auto}@keyframes sheetIn{0%{transform:translateY(100%)}}@keyframes sheetOut{to{transform:translateY(105%)}}@keyframes fadeIn{0%{opacity:0}}@keyframes fadeOut{to{opacity:0}}.sheet-grab{cursor:grab;touch-action:none;justify-content:center;padding:9px 0 5px;display:flex}.sheet-grab span{background:var(--border-2);border-radius:2px;width:40px;height:4px}.sheet-header{justify-content:space-between;align-items:center;padding:2px 4px 14px;font-weight:700;display:flex}.icon-btn{background:var(--surface-2);border:1px solid var(--border-1);color:var(--text-1);cursor:pointer;width:30px;height:30px;transition:background var(--dur-fast) var(--ease-out);border-radius:50%;justify-content:center;align-items:center;display:flex}.sheet-item{text-align:start;background:var(--surface-2);border:1px solid var(--border-1);width:100%;color:var(--text-1);border-radius:var(--r-m);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);align-items:center;gap:10px;margin-bottom:10px;padding:15px 16px;font-size:14.5px;text-decoration:none;display:flex}.sheet-item svg{color:var(--text-2);flex-shrink:0}.sheet-item.recommended{background:color-mix(in srgb, var(--accent) 12%, var(--surface-2));border-color:color-mix(in srgb, var(--accent) 50%, transparent);box-shadow:0 0 14px var(--accent-soft)}.sheet-item.recommended svg{color:var(--accent-hi)}.text-input{background:var(--surface-2);border:1px solid var(--border-1);width:100%;color:var(--text-1);border-radius:var(--r-m);box-sizing:border-box;transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);margin-bottom:10px;padding:13px 16px;font-family:inherit;font-size:14.5px;display:block}.text-input::placeholder{color:var(--text-3)}.text-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.empty{color:var(--text-2);text-align:center;flex-direction:column;align-items:center;gap:4px;padding:22px 0 26px;font-size:14px;display:flex}.empty p{margin:0}.empty-art .ea-front{animation:3.2s ease-in-out infinite alternate floatY}.empty-art .ea-spark{animation:1.8s ease-in-out infinite alternate twinkle}.empty-art .ea-spark2{animation-delay:.6s}.empty-art .ea-spark3{animation-delay:1.1s}@keyframes floatY{to{transform:translateY(-5px)}}@keyframes twinkle{0%{opacity:.2}to{opacity:1}}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.gallery-card{aspect-ratio:3/4;border-radius:var(--r-m);border:1px solid var(--border-1);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;padding:10px;display:flex;position:relative;overflow:hidden}.gallery-text{text-align:center;overflow-wrap:break-word;max-height:100%;font-size:15px;overflow:hidden}.delete-btn{top:6px;color:#fff;cursor:pointer;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:absolute;inset-inline-end:6px}.toast{bottom:calc(90px + env(safe-area-inset-bottom));border:1px solid var(--border-2);color:#fff;border-radius:var(--r-pill);z-index:60;box-shadow:var(--shadow-pop);animation:toastIn var(--dur-med) var(--ease-spring) both, toastOut .3s ease-in 1.9s both;background:#12101aeb;align-items:center;gap:9px;padding:11px 18px;font-size:13.5px;display:flex;position:fixed;left:50%}@keyframes toastIn{0%{opacity:0;transform:translate(-50%)translateY(14px)scale(.9)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes toastOut{to{opacity:0;transform:translate(-50%)translateY(8px)scale(.95)}}.toast-check{color:var(--accent-hi,#c4b5fd);flex-shrink:0}.tc-circle,.tc-check{stroke-dasharray:100;stroke-dashoffset:100px}.tc-circle{animation:dashDraw .45s var(--ease-out) 50ms forwards;opacity:.9}.tc-check{animation:dashDraw .3s var(--ease-out) .4s forwards}@keyframes dashDraw{to{stroke-dashoffset:0}}.footer{text-align:center;flex-shrink:0;padding:6px 0}.footer a{color:var(--text-3);transition:color var(--dur-fast) var(--ease-out);align-items:center;gap:4px;font-size:11px;text-decoration:none;display:inline-flex}[dir=rtl] .flip-rtl{transform:scaleX(-1)}@media (hover:hover){.pill-btn:hover{transform:translateY(-1px)}.chip:hover,.toggle:hover{border-color:var(--border-2)}.swatch:hover{transform:scale(1.06)}.sheet-item:hover{background:var(--surface-3)}.tab:hover{color:var(--text-1)}.icon-btn:hover{background:var(--surface-3)}.rail-btn:hover,.add-layer-btn:hover{background:#191428bf;border-color:#ffffff40}.gallery-card:hover{box-shadow:var(--shadow-1);transform:translateY(-2px)}.footer a:hover{color:var(--text-2)}}.landing{overscroll-behavior:auto;background:radial-gradient(60% 40% at 50% 0%, #8b5cf62e, transparent 70%), var(--bg-0);flex-direction:column;align-items:center;gap:56px;min-height:100%;padding:40px 20px 60px;display:flex;overflow-y:auto}.landing-hero{text-align:center;flex-direction:column;align-items:center;gap:12px;max-width:480px;display:flex}.landing-logo{border-radius:var(--r-m)}.landing-hero h1{letter-spacing:-.02em;margin:4px 0 0;font-size:32px;font-weight:800}.landing-tagline{color:var(--text-2);margin:0;font-size:15px}.landing-cta{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:12px;display:flex}.landing-btn{border-radius:var(--r-pill);transition:transform var(--dur-fast) var(--ease-out), filter var(--dur-fast);align-items:center;gap:8px;padding:12px 20px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.landing-btn:active{transform:scale(.97)}.landing-btn-primary{background:var(--theme-color,#8b5cf6);color:#fff;box-shadow:var(--shadow-1)}.landing-btn-secondary{background:var(--surface-2);color:var(--text-1);border:1px solid var(--border-2)}.landing-btn:hover{filter:brightness(1.08)}.landing-btn.disabled{opacity:.6;pointer-events:none}.landing-note{color:var(--text-3);max-width:420px;margin:4px 0 0;font-size:12px;line-height:1.7}.landing-platform-banner{border-radius:var(--r-lg,14px);background:var(--surface-2);border:1px solid var(--border-2);max-width:640px;color:var(--text-2);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:20px auto 0;padding:12px 16px;font-size:13px;line-height:1.7;display:flex}.landing-btn-sm{padding:8px 14px;font-size:12px}.landing-screens{flex-wrap:wrap;justify-content:center;gap:16px;max-width:900px;display:flex}.landing-screens img{border-radius:var(--r-l);border:1px solid var(--border-1);width:220px;box-shadow:var(--shadow-pop)}.landing-features{width:100%;max-width:900px}.landing-features h2{text-align:center;margin:0 0 24px;font-size:20px}.landing-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.landing-card{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--r-l);padding:18px}.landing-card-icon{border-radius:var(--r-m);background:var(--surface-3);width:36px;height:36px;color:var(--theme-color,#8b5cf6);justify-content:center;align-items:center;margin-bottom:10px;display:flex}.landing-card h3{margin:0 0 6px;font-size:14px}.landing-card p{color:var(--text-2);margin:0;font-size:12.5px;line-height:1.7}.landing-contributors{width:100%;max-width:900px}.landing-contributors h2{text-align:center;margin:0 0 24px;font-size:20px}.landing-contributors-loading,.landing-contributors-fallback{text-align:center;color:var(--text-3);font-size:13px}.landing-contributors-fallback a{color:var(--text-2)}.landing-contributors-grid{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.landing-contributor{width:96px;color:var(--text-1);transition:transform var(--dur-fast) var(--ease-out);flex-direction:column;align-items:center;gap:6px;text-decoration:none;display:flex}.landing-contributor:hover{transform:translateY(-3px)}.landing-contributor img{border:2px solid var(--border-2);border-radius:50%;width:56px;height:56px}.landing-contributor span{text-align:center;word-break:break-word;font-size:12.5px;font-weight:700}.landing-contributor small{color:var(--text-3);font-size:11px}.landing-footer{color:var(--text-2);flex-wrap:wrap;justify-content:center;gap:20px;font-size:13px;display:flex}.landing-footer a{color:inherit;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.landing-footer a:hover{color:var(--text-1)}
