Spaces:
Runtime error
Runtime error
File size: 4,939 Bytes
0649f1b | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | {#- Shared layout of every infographic theme. A theme extends this and fills the style, the background, the hero drawing and a few
words. All text is autoescaped; nothing from the model is ever marked safe. The notestack.ai mark is added by the renderer. -#}
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family={{ fonts.h|replace(' ', '+') }}:wght@400;500;600;700&family={{ fonts.b|replace(' ', '+') }}:wght@300;400;500;600&family={{ fonts.m|replace(' ', '+') }}:wght@400;700&display=swap">
<style>
.ig,.ig *{box-sizing:border-box;margin:0;padding:0}
.ig{position:relative;width:{{ width }}px;height:{{ height }}px;overflow:hidden;color:var(--ink);font-family:var(--fb);
background:radial-gradient(1300px 800px at 62% 14%,var(--bg2),var(--bg1) 72%)}
.ig .bg{position:absolute;inset:0;pointer-events:none}
.ig .main{position:absolute;left:110px;right:110px;top:84px;bottom:116px;display:flex;flex-direction:column}
.ig .head{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;height:var(--hh,400px);flex:none}
.ig .head .txt{width:900px}
.ig .eyebrow{font-family:var(--fm);font-size:21px;letter-spacing:.24em;text-transform:uppercase;color:var(--a);margin-bottom:18px}
.ig h1{font-family:var(--fh);font-weight:var(--hw,700);font-size:72px;line-height:1.05;letter-spacing:var(--hl,0);text-transform:var(--ht,none);margin-bottom:20px}
.ig .sub{font-size:31px;line-height:1.35;color:var(--mute)}
.ig .hero{flex:none;width:480px;height:400px}
.ig .lab{font-family:var(--fm);font-size:21px;letter-spacing:.22em;text-transform:uppercase;color:var(--a);margin:12px 0 16px;flex:none;display:flex;align-items:center;gap:18px}
.ig .lab.gap{margin-top:12px}
.ig .lab:after{content:"";flex:1;height:2px;background:var(--line)}
.ig .fill{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:space-evenly}
.ig .band{margin-top:0;display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center;padding:34px 50px;border-radius:var(--r);background:var(--paper);color:var(--paperink);flex:none}
.ig .band .q{font-family:var(--fh);font-weight:700;font-size:40px;line-height:1.14;text-transform:var(--ht,none)}
.ig .band ul{list-style:none;font-size:24px;line-height:1.35}
.ig .band li{position:relative;padding-left:26px;margin:7px 0}
.ig .band li:before{content:"";position:absolute;left:0;top:11px;width:12px;height:12px;border-radius:50%;background:var(--b)}
.ig .mark{position:absolute;right:44px;bottom:34px;display:flex;align-items:center;gap:16px;font-family:'Space Mono',monospace;font-size:30px;font-weight:700;letter-spacing:.06em;color:#fff;padding:8px 26px 8px 10px;border-radius:999px;background:rgba(10,14,20,.7);border:1px solid rgba(255,255,255,.3)}
.ig .mark svg{width:52px;height:52px;display:block}
.ig .left{display:contents}
.ig .head{order:1}.ig .fill{order:2}.ig .band{order:3}
.ig.landscape .main{top:70px;bottom:90px;flex-direction:row;gap:60px}
.ig.landscape .left{display:flex;flex-direction:column;justify-content:space-between;gap:28px;width:600px;flex:none;min-height:0}
.ig.landscape .head{display:block;height:auto}
.ig.landscape .head .txt{width:100%}
.ig.landscape h1{font-size:60px}
.ig.landscape .sub{font-size:28px}
.ig.landscape .hero{display:block;width:360px;height:300px;margin:22px 0 0 auto}
.ig.landscape .fill{order:0;width:1380px;flex:none}
.ig.landscape .band{grid-template-columns:1fr;gap:18px;padding:30px 34px}
.ig.landscape .band .q{font-size:36px}
.ig.landscape .band ul{font-size:22px}
{% block css %}{% endblock %}
</style>
<div class="ig {{ layout }}" style="--bg1:{{ pal.bg1 }};--bg2:{{ pal.bg2 }};--ink:{{ pal.ink }};--mute:{{ pal.mute }};--a:{{ pal.a }};--b:{{ pal.b }};--card:{{ pal.card }};--line:{{ pal.line }};--paper:{{ pal.paper }};--paperink:{{ pal.paperink }};--r:{{ pal.r }}px;--fh:'{{ fonts.h }}',serif;--fb:'{{ fonts.b }}',sans-serif;--fm:'{{ fonts.m }}',monospace;--hw:{{ fonts.hw }};--ht:{{ fonts.ht }};--bt:{{ fonts.bt }}">
<svg class="bg" width="{{ width }}" height="{{ height }}" viewBox="0 0 {{ width }} {{ height }}">
{% for s in stars %}<circle cx="{{ s[0] }}" cy="{{ s[1] }}" r="{{ s[2] }}" fill="{{ pal.ink }}" opacity="{{ s[3] }}"/>{% endfor %}
<g{% if layout == "landscape" %} transform="translate(660 0)"{% endif %}>{% block bg %}{% endblock %}</g>
</svg>
<div class="main">
<div class="left">
<div class="head">
<div class="txt">
<div class="eyebrow">{{ eyebrow }}</div>
<h1>{{ c.title }}</h1>
<p class="sub">{{ c.subtitle }}</p>
</div>
<svg class="hero" viewBox="0 0 480 400">{% block hero %}{% endblock %}</svg>
</div>
<div class="band">
<div class="q">{{ c.rule }}</div>
<ul>{% for n in c.notes %}<li>{{ n }}</li>{% endfor %}</ul>
</div>
</div>
<div class="fill">{% block body %}{% endblock %}</div>
</div>
<div class="mark">{{ logo }}<span>notestack.ai</span></div>
</div>
|