Spaces:
Running
Running
| /* Minimal bottom studio strip — aligns with app-shell width */ | |
| .shellWrap { | |
| display: flex; | |
| flex-direction: column; | |
| min-height: 100vh; | |
| position: relative; | |
| isolation: isolate; | |
| } | |
| /* Ambient depth behind main content (no layout impact) */ | |
| .shellWrap::before { | |
| content: ""; | |
| position: fixed; | |
| inset: 0; | |
| z-index: -1; | |
| pointer-events: none; | |
| background: radial-gradient(ellipse 80% 55% at 50% -10%, rgba(91, 157, 255, 0.045), transparent 50%); | |
| opacity: 1; | |
| } | |
| @media (prefers-color-scheme: light) { | |
| .shellWrap::before { | |
| background: radial-gradient(ellipse 90% 50% at 50% -15%, rgba(37, 99, 235, 0.06), transparent 55%); | |
| } | |
| } | |
| .shellMain { | |
| flex: 1 0 auto; | |
| position: relative; | |
| z-index: 0; | |
| } | |
| .footer { | |
| flex-shrink: 0; | |
| margin-top: auto; | |
| padding-top: 40px; | |
| padding-bottom: 12px; | |
| } | |
| .footerCard { | |
| max-width: 960px; | |
| margin: 0 auto; | |
| width: 100%; | |
| border-radius: var(--radius-md, 10px); | |
| border-top: 1px solid var(--border-subtle); | |
| border-left: none; | |
| border-right: none; | |
| border-bottom: none; | |
| background: transparent; | |
| overflow: hidden; | |
| } | |
| .footerRow { | |
| padding: 10px 14px; | |
| border-bottom: 1px solid var(--border-subtle); | |
| } | |
| .footerRow:last-child { | |
| border-bottom: none; | |
| } | |
| .footerRowSplit { | |
| display: flex; | |
| flex-direction: column; | |
| gap: 8px; | |
| } | |
| @media (min-width: 520px) { | |
| .footerRowSplit { | |
| flex-direction: row; | |
| align-items: center; | |
| justify-content: space-between; | |
| gap: 12px; | |
| } | |
| .rowHint { | |
| flex-shrink: 0; | |
| min-width: 7.5rem; | |
| } | |
| .urlLine { | |
| flex: 1; | |
| min-width: 0; | |
| } | |
| } | |
| .footerRowMeta { | |
| padding-top: 10px; | |
| padding-bottom: 10px; | |
| } | |
| .footerLinks { | |
| display: flex; | |
| flex-wrap: wrap; | |
| align-items: center; | |
| gap: 6px 4px; | |
| justify-content: center; | |
| } | |
| .footerSep { | |
| color: var(--muted); | |
| font-size: 12px; | |
| user-select: none; | |
| } | |
| .brandLockup { | |
| display: flex; | |
| align-items: center; | |
| gap: 10px; | |
| text-decoration: none; | |
| color: inherit; | |
| } | |
| .brandLockup:hover .brandName { | |
| color: var(--link); | |
| } | |
| .brandIcon { | |
| flex-shrink: 0; | |
| opacity: 0.88; | |
| border-radius: var(--radius-xs, 4px); | |
| } | |
| .brandText { | |
| display: flex; | |
| flex-direction: column; | |
| gap: 1px; | |
| min-width: 0; | |
| } | |
| .brandName { | |
| font-size: 12px; | |
| font-weight: 500; | |
| color: var(--text); | |
| letter-spacing: 0.01em; | |
| transition: color var(--motion-xxs, 0.12s) var(--ease-soft, ease); | |
| } | |
| .brandProduct { | |
| font-size: 11px; | |
| color: var(--muted); | |
| } | |
| .rowHint { | |
| font-size: 11px; | |
| color: var(--muted); | |
| } | |
| .urlLine { | |
| display: flex; | |
| align-items: stretch; | |
| gap: 8px; | |
| min-width: 0; | |
| } | |
| .urlField { | |
| flex: 1; | |
| min-width: 0; | |
| font-size: 12px; | |
| padding: 6px 10px; | |
| border-radius: var(--radius-sm, 6px); | |
| border: 1px solid var(--border-subtle); | |
| background: var(--bg); | |
| color: var(--muted); | |
| font-family: var(--font-mono, ui-monospace, monospace); | |
| } | |
| .copyBtn { | |
| flex-shrink: 0; | |
| font-size: 12px; | |
| font-weight: 500; | |
| padding: 6px 12px; | |
| border-radius: var(--radius-sm, 6px); | |
| border: 1px solid var(--border-subtle); | |
| background: var(--bg); | |
| color: var(--link); | |
| cursor: pointer; | |
| transition: background var(--motion-xxs, 0.12s) var(--ease-soft, ease); | |
| } | |
| .copyBtn:hover { | |
| background: var(--surface-muted); | |
| } | |
| .textLink { | |
| font-size: 12px; | |
| font-weight: 500; | |
| color: var(--link); | |
| text-decoration: none; | |
| } | |
| .textLink:hover { | |
| text-decoration: underline; | |
| } | |
| .footerCopyright { | |
| text-align: center; | |
| border-bottom: none; | |
| padding-top: 10px; | |
| padding-bottom: 12px; | |
| } | |
| .copyrightText { | |
| margin: 0; | |
| font-size: 11px; | |
| color: var(--muted); | |
| line-height: 1.4; | |
| } | |