UNPKG

beedle

Version:

Beedle is a tiny little library to help you manage state across your application. Inspired by great libraries like Vuex and Redux, Beedle creates a central store that enables you to both better control and cascade state across your application.

201 lines (172 loc) 3.09 kB
/** * Define variables */ :root { --border: #888888; --decor: #777777; --text: #141414; --text-secondary: #555555; --danger: #d62c1a; --danger--dark: #a82315; } /** * Core styles */ html { height: 100%; font-size: 16px; background: #f3f3f3; } body { font-family: sans-serif; margin: 0; padding: 2rem 1rem; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 1rem; line-height: 1.5; color: var(--text); } p { margin: 0; } h1, h2 { font-weight: 400; line-height: 1.1; margin: 0; } a { color: var(--danger); } @media all and (min-width: 40em) { main { width: 80vw; max-width: 40em; margin: 0 auto } } /** * Intro */ .intro { padding: 0 0 1rem 0; margin: 0 0 2rem 0; border-bottom: 1px dotted var(--border); } .intro__heading { font-weight: 400; } .intro__summary { margin-top: 0.3rem; font-size: 1.3rem; font-weight: 300; } .intro__summary b { font-weight: 500; } /** * App */ .app { display: grid; grid-template-columns: 1fr; grid-auto-flow: row; grid-gap: 2rem; } .app__decor { display: block; width: 100%; text-align: center; font-size: 3rem; line-height: 1; } .app__decor small { display: block; font-size: 1.3rem; font-weight: 400; color: var(--text-secondary); } .app__decor > * { display: block; } .app__decor > * + * { margin-top: 0.4rem; } .app__items { list-style: none; padding: 0; margin: 1rem 0 0 0; font-weight: 300; } .app__items li { position: relative; padding: 0 0 0 2rem; font-size: 1.3rem; } .app__items li::before { content: "🎉"; position: absolute; top: 1px; left: 0; } .app__items li + li { margin-top: 0.5rem; } .app__items button { background: transparent; border: none; position: relative; top: -1px; color: var(--danger); font-weight: 500; font-size: 1rem; margin: 0 0 0 5px; cursor: pointer; } .app__items button:hover { color: var(--danger--dark); } @media all and (min-width: 40rem) { .app { grid-template-columns: 2fr 1fr; } } /** * New item */ .new-item { margin: 2rem 0 0 0; padding: 1rem 0 0 0; border-top: 1px dotted var(--border); } /* Imporants override Boilerform styles and allow us to pull the CSS straight from the repo */ .new-item__button { position: relative; top: 2px; padding-bottom: 11px !important; } .new-item__label { font-size: 1.1rem !important; font-weight: 400 !important; } /** * No items */ .no-items { margin: 1rem 0 0 0; color: var(--text-secondary); } /** * Visually hidden */ .visually-hidden { display: block; height: 1px; width: 1px; overflow: hidden; clip: rect(1px 1px 1px 1px); clip: rect(1px, 1px, 1px, 1px); clip-path: inset(1px); white-space: nowrap; position: absolute; }