diff --git a/src/refine.css b/src/refine.css new file mode 100644 index 0000000..e02cb92 --- /dev/null +++ b/src/refine.css @@ -0,0 +1,659 @@ + +:root{ + --ink:#172033; + --muted:#718096; + --line:#e3e8ef; + --surface:#ffffff; + --soft:#f4f7f9; + --accent:#111827; + --success:#18794e; +} + +body{ + background:#edf2f5; +} + +.app{ + background:linear-gradient(180deg,#f9fbfc 0%,#f4f7f9 100%); +} + +.topbar{ + border-color:rgba(216,224,232,.85); +} + +.hero{ + margin:0 14px 12px; + padding:20px; + border-radius:24px; + background: + radial-gradient(circle at 92% 12%,rgba(255,255,255,.16),transparent 30%), + linear-gradient(145deg,#111827,#253247); + color:white; + box-shadow:0 16px 40px rgba(30,41,59,.14); +} + +.hero-kicker{ + display:inline-block; + font-size:10px; + letter-spacing:.14em; + font-weight:800; + color:#cbd5e1; + text-transform:uppercase; +} + +.hero h2{ + margin:7px 0 8px; + max-width:430px; + font-size:24px; + line-height:1.05; + letter-spacing:-.04em; +} + +.hero p{ + margin:0; + color:#d5dce6; + line-height:1.5; + font-size:14px; + max-width:500px; +} + +.hero-stats{ + display:grid; + grid-template-columns:repeat(3,1fr); + gap:7px; + margin-top:18px; +} + +.hero-stats button{ + display:grid; + gap:2px; + text-align:left; + border:1px solid rgba(255,255,255,.12); + border-radius:13px; + padding:10px 11px; + color:white; + background:rgba(255,255,255,.08); +} + +.hero-stats strong{ + font-size:17px; +} + +.hero-stats span{ + font-size:10px; + color:#cbd5e1; +} + +.library-controls{ + padding:4px 14px 8px; +} + +.search-field{ + display:flex; + align-items:center; + gap:8px; + padding:0 12px; + border:1px solid var(--line); + border-radius:14px; + background:white; + box-shadow:0 2px 10px rgba(15,23,42,.025); +} + +.search-field span{ + color:#8793a4; + font-size:18px; +} + +.search-field input{ + width:100%; + border:0; + outline:0; + padding:12px 0; + color:var(--ink); + background:transparent; +} + +.filter-row{ + display:flex; + gap:7px; + overflow:auto; + padding-top:9px; + scrollbar-width:none; +} + +.filter-row::-webkit-scrollbar{display:none} + +.filter-row button{ + flex:0 0 auto; + border:1px solid var(--line); + background:white; + color:#64748b; + padding:7px 11px; + border-radius:999px; + font-size:11px; + font-weight:800; +} + +.filter-row button.active{ + background:#111827; + color:white; + border-color:#111827; +} + +.template-card.refined{ + grid-template-columns:42px minmax(0,1fr) 18px; + align-items:center; + gap:12px; + padding:13px; +} + +.template-icon{ + width:42px; + height:42px; + display:grid; + place-items:center; + border-radius:12px; + background:#eef4ff; + color:#315fa8; + font-size:18px; +} + +.template-icon.email{ + background:#ecf8f0; + color:#32704a; +} + +.template-card-body{ + min-width:0; + display:grid; + gap:4px; +} + +.template-card-topline{ + display:flex; + align-items:center; + gap:8px; + min-width:0; +} + +.template-card-topline strong{ + min-width:0; + overflow:hidden; + white-space:nowrap; + text-overflow:ellipsis; +} + +.status-dot{ + width:7px; + height:7px; + border-radius:50%; + flex:0 0 auto; + background:#c5ced9; +} + +.status-dot.published{ + background:#22a06b; + box-shadow:0 0 0 3px rgba(34,160,107,.1); +} + +.template-key{ + color:#8994a5; + font:10px ui-monospace,SFMono-Regular,Menlo,monospace; + overflow:hidden; + white-space:nowrap; + text-overflow:ellipsis; +} + +.chevron{ + color:#a1aab8; + font-size:23px; +} + +.sheet-heading{ + display:flex; + align-items:flex-start; + gap:11px; + margin-bottom:18px; +} + +.sheet-heading h2{ + margin:0 0 3px; +} + +.sheet-heading p{ + margin:0; + color:#7a8596; + font-size:12px; + line-height:1.4; +} + +.sheet-icon{ + width:34px; + height:34px; + display:grid; + place-items:center; + border-radius:10px; + background:#111827; + color:white; + font-weight:800; +} + +.button.large{ + padding:13px 15px; + border-radius:12px; +} + +.template-meta{ + display:flex; + align-items:center; + gap:6px; + margin-top:2px; +} + +.mini-status{ + border-radius:999px; + padding:2px 6px; + font-size:9px; + font-weight:800; + background:#eef2f7; + color:#657386; +} + +.mini-status.published{ + background:#e7f6ed; + color:#18794e; +} + +.editor-context{ + display:flex; + align-items:center; + justify-content:space-between; + gap:10px; + margin-bottom:2px; + padding:2px 2px 8px; + color:#7b8797; + font-size:11px; +} + +.editor-context>div{ + min-width:0; + display:flex; + align-items:center; + gap:8px; +} + +.editor-context code{ + min-width:0; + overflow:hidden; + white-space:nowrap; + text-overflow:ellipsis; + font-size:9px; + color:#8792a2; +} + +.type-pill{ + flex:0 0 auto; + border-radius:999px; + background:#eef4ff; + color:#315fa8; + padding:5px 8px; + font-size:10px; + font-weight:800; +} + +.type-pill.email{ + background:#eaf7ef; + color:#32704a; +} + +.document-surface{ + display:grid; + gap:9px; + border:1px solid #e0e6ed; + border-radius:22px; + background:rgba(255,255,255,.66); + padding:10px; + box-shadow:0 10px 30px rgba(15,23,42,.035); +} + +.block-card{ + grid-template-columns:19px minmax(0,1fr) 24px; + align-items:center; + gap:9px; + padding:14px 12px; + min-height:68px; + box-shadow:0 3px 10px rgba(15,23,42,.025); +} + +.drag-hint{ + color:#b4bdc8; + letter-spacing:-3px; + font-size:14px; +} + +.block-copy{ + min-width:0; + display:grid; + gap:4px; +} + +.block-index{ + position:static; + transform:none; + text-align:right; + font-variant-numeric:tabular-nums; +} + +.section-heading{ + display:flex; + align-items:flex-end; + justify-content:space-between; + gap:12px; + margin:4px 0 14px; +} + +.section-heading h2{ + margin:3px 0 0; + font-size:24px; + letter-spacing:-.035em; +} + +.preview-segment{ + margin-bottom:14px; +} + +.copy{ + line-height:1.5; +} + +.field-panel{ + margin-top:18px; + padding:14px; + background:white; + border:1px solid var(--line); + border-radius:15px; +} + +.field-panel h3{ + margin:0 0 10px; + font-size:13px; +} + +.use-panel{ + padding:16px 14px 110px; + max-width:760px; + margin:auto; +} + +.publish-state{ + border-radius:999px; + padding:6px 9px; + background:#f1f3f6; + color:#7c8796; + font-size:10px; + font-weight:800; +} + +.publish-state.ready{ + background:#e7f6ed; + color:#18794e; +} + +.integration-card, +.auth-card, +.key-manager{ + margin-bottom:10px; + padding:14px; + border:1px solid var(--line); + background:white; + border-radius:16px; + box-shadow:0 3px 12px rgba(15,23,42,.025); +} + +.card-label{ + display:block; + margin-bottom:8px; + font-size:10px; + letter-spacing:.08em; + text-transform:uppercase; + color:#8290a2; + font-weight:800; +} + +.copy-row{ + display:flex; + align-items:center; + gap:8px; +} + +.copy-row code{ + min-width:0; + flex:1; + overflow:hidden; + text-overflow:ellipsis; + white-space:nowrap; + color:#263449; + font-size:11px; +} + +.copy-row.multiline{ + align-items:flex-start; +} + +.copy-row.multiline code{ + white-space:normal; + overflow-wrap:anywhere; +} + +.copy-row button{ + flex:0 0 auto; + border:1px solid #dce3ea; + border-radius:8px; + padding:6px 8px; + background:#f7f9fb; + color:#42516a; + font-size:10px; + font-weight:800; +} + +.integration-card pre{ + margin:12px 0 0; + padding:12px; + border-radius:11px; + overflow:auto; + background:#111827; + color:#e5edf5; + font:10px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace; +} + +.auth-heading, +.key-manager-heading{ + display:flex; + align-items:flex-start; + justify-content:space-between; + gap:12px; + margin-bottom:12px; +} + +.auth-heading h3, +.key-manager h3{ + margin:0 0 3px; + font-size:15px; +} + +.auth-heading p, +.key-manager p{ + margin:0; + color:#7a8596; + font-size:11px; + line-height:1.4; +} + +.lock{ + width:30px; + height:30px; + display:grid; + place-items:center; + border-radius:9px; + background:#edf7f0; + color:#18794e; + font-weight:900; +} + +.auth-option{ + display:grid; + gap:5px; + padding:10px 0; + border-top:1px solid #edf1f5; +} + +.auth-option strong{ + font-size:12px; +} + +.auth-option code{ + overflow:auto; + font-size:10px; + color:#44536b; +} + +.auth-option span{ + color:#8290a2; + font-size:10px; +} + +.create-key-row{ + display:grid; + grid-template-columns:minmax(0,1fr) auto; + gap:8px; + margin-bottom:10px; +} + +.create-key-row input{ + min-width:0; + border:1px solid #d6dde6; + border-radius:10px; + padding:10px 11px; + outline:none; +} + +.secret-reveal{ + margin:10px 0; + padding:12px; + border:1px solid #f2d491; + border-radius:12px; + background:#fffaf0; +} + +.secret-reveal strong{ + font-size:12px; +} + +.secret-reveal p{ + margin:3px 0 10px; + color:#856404; +} + +.copy-row.secret code{ + color:#6b4f00; +} + +.key-list{ + display:grid; + gap:8px; +} + +.key-row{ + display:flex; + align-items:center; + justify-content:space-between; + gap:10px; + padding-top:10px; + border-top:1px solid #edf1f5; +} + +.key-row>span:first-child{ + min-width:0; + display:grid; + gap:3px; +} + +.key-row strong{ + font-size:12px; +} + +.key-row code{ + color:#8994a4; + font-size:9px; +} + +.key-meta{ + flex:0 0 auto; + display:grid; + justify-items:end; + gap:3px; +} + +.key-meta small{ + color:#8994a4; + font-size:8px; +} + +.key-meta button{ + border:0; + background:transparent; + color:#ad2438; + font-size:10px; + font-weight:800; +} + +.bottom-nav.four{ + grid-template-columns:repeat(4,1fr); +} + +@media(min-width:760px){ + .hero{ + display:grid; + grid-template-columns:minmax(0,1fr) 290px; + align-items:end; + gap:24px; + padding:28px; + } + + .hero h2{ + font-size:32px; + } + + .hero-stats{ + margin-top:0; + } + + .library-controls{ + display:flex; + align-items:center; + gap:10px; + } + + .search-field{ + flex:1; + max-width:420px; + } + + .filter-row{ + padding-top:0; + } + + .template-list{ + grid-template-columns:repeat(2,minmax(0,1fr)); + } + + .document-surface{ + padding:14px; + } +} + +@media(min-width:1050px){ + .template-list{ + grid-template-columns:repeat(3,minmax(0,1fr)); + } +}