summaryrefslogtreecommitdiff
path: root/website/styles.css
diff options
context:
space:
mode:
Diffstat (limited to 'website/styles.css')
-rw-r--r--website/styles.css216
1 files changed, 191 insertions, 25 deletions
diff --git a/website/styles.css b/website/styles.css
index 0deb034..014e248 100644
--- a/website/styles.css
+++ b/website/styles.css
@@ -1,20 +1,36 @@
+:root {
+ --bg: #f3f3f1;
+ --surface: #fff;
+ --border: #ddd;
+ --text: #111;
+ --muted: rgba(0, 0, 0, 0.62);
+ --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.06);
+ --shadow-md: 0 8px 24px rgba(0, 0, 0, 0.06);
+}
+
+* {
+ box-sizing: border-box;
+}
+
body {
- font-family: system-ui;
- background: #f3f3f1;
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
+ background: var(--bg);
+ color: var(--text);
margin: 0;
}
a,
a:visited {
- color: blue
+ color: blue;
}
img {
- max-width: 100%
+ max-width: 100%;
+ display: block;
}
.page {
- max-width: 900px;
+ max-width: 960px;
margin: 0 auto;
padding: 16px;
}
@@ -23,9 +39,10 @@ img {
.site-header,
.content-grid,
.screenshots,
-.resources {
- border: 1px solid #ddd;
- background: white;
+.resources,
+.feature-sections {
+ border: 1px solid var(--border);
+ background: var(--surface);
margin-bottom: 16px;
padding: 20px;
}
@@ -33,9 +50,13 @@ img {
.brand-row {
display: flex;
justify-content: space-between;
+ gap: 20px;
+ align-items: flex-start;
}
-.brand, .brand h1, .brand p {
+.brand,
+.brand h1,
+.brand p {
color: black;
text-decoration: none;
}
@@ -44,28 +65,30 @@ img {
display: flex;
gap: 16px;
align-items: center;
+ min-width: 0;
}
.brand h1 {
margin: 0;
}
+.subtitle,
.brand p {
margin-top: 0;
- opacity: 0.6;
+ opacity: 0.68;
}
.app-icon {
width: 80px;
border-radius: 18px;
border: 1px solid rgba(0, 0, 0, 0.08);
- box-shadow:
- 0 1px 2px rgba(0, 0, 0, 0.06),
- 0 4px 12px rgba(0, 0, 0, 0.08);
+ box-shadow: var(--shadow-sm), 0 4px 12px rgba(0, 0, 0, 0.08);
+ flex: 0 0 auto;
}
.hero-actions {
text-align: right;
+ flex: 0 0 auto;
}
.store-img {
@@ -78,37 +101,108 @@ img {
}
.intro-copy {
- margin-top: 16px;
+ margin-top: 18px;
}
.lede {
- padding-top: 1rem;
- font-weight: bold;
+ margin: 0 0 10px;
+ font-weight: 700;
+ font-size: 1.125rem;
+}
+
+.intro-copy p:last-child {
+ margin-bottom: 0;
}
-.content-grid {
+.content-grid,
+.feature-sections {
display: grid;
grid-template-columns: 1fr 1fr;
+ gap: 20px;
+}
+
+.content-grid>div,
+.feature-sections>.feature-panel {
+ min-width: 0;
+}
+
+.content-grid h2,
+.screenshots h2,
+.resources h2,
+.feature-panel h2 {
+ margin-top: 0;
}
-.content-grid div:first-child {
- padding-right: 0.5rem;
+.feature-list {
+ margin: 0;
+ padding-left: 1.2rem;
+ line-height: 1.55;
+}
+
+.feature-list li+li {
+ margin-top: 0.45rem;
}
-.content-grid div:last-child {
- padding-left: 0.5rem;
+.section-intro {
+ margin-top: 0;
+ color: var(--muted);
}
-.shot-grid {
+.shot-scroll {
display: grid;
- grid-template-columns: repeat(3, 1fr);
- gap: 10px;
+ grid-auto-flow: column;
+ grid-auto-columns: minmax(220px, 280px);
+ gap: 12px;
+ overflow-x: auto;
+ overscroll-behavior-x: contain;
+ padding-bottom: 8px;
+ scroll-snap-type: x proximity;
+ -webkit-overflow-scrolling: touch;
+}
+
+.shot-scroll::-webkit-scrollbar {
+ height: 10px;
+}
+
+.shot-scroll::-webkit-scrollbar-thumb {
+ background: rgba(0, 0, 0, 0.18);
+}
+
+.shot-card {
+ margin: 0;
+ scroll-snap-align: start;
+ border: 1px solid var(--border);
+ overflow: hidden;
+ background: #fafafa;
+ box-shadow: var(--shadow-md);
+}
+
+.shot-card img {
+ width: 100%;
+ height: auto;
+}
+
+.shot-card figcaption {
+ padding: 10px 12px 12px;
+ font-size: 0.95rem;
+ font-weight: 600;
}
.resource-list {
display: flex;
flex-direction: column;
gap: 6px;
+ margin: 0;
+ padding-left: 1.2rem;
+}
+
+.resource-list ul {
+ margin-top: 6px;
+}
+
+.site-footer,
+footer {
+ padding: 4px 2px 24px;
}
.privacy h2 {
@@ -125,7 +219,7 @@ img {
.privacy p {
margin: 0 0 14px;
- line-height: 1.45;
+ line-height: 1.5;
}
.privacy ul {
@@ -145,4 +239,76 @@ img {
.privacy a:hover {
text-decoration: underline;
+}
+
+code {
+ font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
+ font-size: 0.95em;
+}
+
+@media (max-width: 760px) {
+ .page {
+ padding: 12px;
+ }
+
+ .brand-row,
+ .content-grid,
+ .feature-sections {
+ grid-template-columns: 1fr;
+ display: grid;
+ }
+
+ .shot-scroll {
+ grid-auto-columns: minmax(240px, 78vw);
+ }
+
+ .brand-row {
+ gap: 16px;
+ }
+
+ .hero-actions {
+ text-align: left;
+ }
+
+ .brand {
+ align-items: flex-start;
+ }
+
+ .store-img {
+ height: 44px;
+ }
+
+ .content-grid,
+ .feature-sections {
+ gap: 12px;
+ }
+
+ .site-header,
+ .content-grid,
+ .screenshots,
+ .resources,
+ .feature-sections,
+ .privacy {
+ padding: 16px;
+ }
+
+ .feature-list,
+ .resource-list {
+ padding-left: 1.1rem;
+ }
+}
+
+.info-banner {
+ margin: 24px auto;
+ padding: 14px 16px;
+ max-width: 960px;
+
+ background: #fff3cd;
+ border: 1px solid #ffeeba;
+
+ color: #856404;
+ font-size: 14px;
+ line-height: 1.5;
+
+ text-align: center;
} \ No newline at end of file