:root {
  --canvas: #ffffff;
  --surface: #f7f8f7;
  --surface-soft: #f2f4f2;
  --ink: #111815;
  --charcoal: #2e3832;
  --slate: #45554b;
  --steel: #65736a;
  --hairline: #dfe5e0;
  --hairline-strong: #cdd6cf;
  --mint: #c9f84a;
  --mint-deep: #a8d532;
  --mint-soft: #f2ffce;
  --on-dark: #f9fcf7;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --ease-out: cubic-bezier(.16, 1, .3, 1);
  --shadow-card: 0 4px 12px rgba(17, 24, 21, .055);
  --shadow-hero: 0 24px 48px -8px rgba(17, 24, 21, .14);
}

* { box-sizing: border-box; }
html { min-width: 320px; background: var(--canvas); }
body { margin: 0; min-width: 320px; color: var(--ink); background: var(--canvas); font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 14px; line-height: 1.5; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid var(--mint-deep); outline-offset: 2px; }
.skip-link { position: fixed; z-index: 100; left: 16px; top: -60px; padding: 10px 14px; color: var(--ink); background: var(--mint); border-radius: 999px; font-weight: 600; text-decoration: none; }.skip-link:focus { top: 16px; }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; clip-path: inset(50%); }

.app-frame { display: grid; grid-template-columns: 244px minmax(0, 1fr); min-height: 100vh; }
.sidebar { position: sticky; top: 0; z-index: 20; align-self: start; display: flex; flex-direction: column; height: 100vh; max-height: 100vh; overflow-y: auto; overscroll-behavior: contain; padding: 26px 16px 18px; background: var(--canvas); border-right: 1px solid var(--hairline); }
.brand-lockup { display: flex; align-items: center; gap: 9px; padding: 0 8px; margin-bottom: 38px; color: var(--ink); font-size: 16px; font-weight: 700; letter-spacing: -.04em; }.brand-mark { width: 22px; height: 22px; display: flex; align-items: end; gap: 3px; padding: 4px; border-radius: 5px; background: var(--ink); }.brand-mark i { display: block; width: 3px; background: var(--mint); border-radius: 2px; }.brand-mark i:nth-child(1) { height: 7px; }.brand-mark i:nth-child(2) { height: 12px; }.brand-mark i:nth-child(3) { height: 16px; }
.nav-label, .eyebrow { margin: 0; color: var(--steel); font: 600 11px/1.4 "Geist Mono", "SFMono-Regular", Consolas, monospace; letter-spacing: .5px; }.sidebar-nav, .sidebar-section { margin-bottom: 27px; }.nav-label { padding: 0 10px; margin-bottom: 7px; }
.shelf-link { width: 100%; min-height: 40px; padding: 8px 10px; display: flex; align-items: center; justify-content: space-between; gap: 8px; border: 0; border-radius: var(--radius-sm); background: transparent; color: var(--slate); text-align: left; font-size: 14px; transition: background 160ms var(--ease-out), color 160ms var(--ease-out); }.shelf-link:hover { color: var(--ink); background: var(--surface); }.shelf-link.is-active { color: var(--ink); background: var(--surface); font-weight: 500; }.shelf-link b { color: var(--steel); font: 500 11px "Geist Mono", monospace; }.shelf-link.is-active b { color: var(--ink); }
.sidebar-section { border-top: 1px solid var(--hairline); padding-top: 22px; }.source-option { min-height: 40px; display: flex; align-items: center; gap: 9px; padding: 0 10px; color: var(--slate); cursor: pointer; font-size: 14px; }.source-option input { width: 15px; height: 15px; margin: 0; accent-color: var(--ink); }.source-dot { width: 7px; height: 7px; border-radius: 50%; }.source-dot.liked { background: #e18067; }.source-dot.bookmarked { background: #eeae3d; }.source-dot.captured { background: var(--mint-deep); }
.sidebar-footer { position: sticky; bottom: 0; z-index: 1; margin-top: auto; padding: 18px 2px 0; border-top: 1px solid var(--hairline); background: var(--canvas); }.sidebar-action { width: 100%; min-height: 40px; display: flex; align-items: center; gap: 9px; padding: 8px; border: 0; background: transparent; color: var(--slate); text-align: left; font-size: 12px; }.sidebar-action:hover { color: var(--ink); }.sidebar-action:disabled { cursor: wait; opacity: .6; }.sidebar-action span { color: var(--ink); font-size: 16px; }.privacy-note { display: flex; align-items: center; gap: 6px; margin: 14px 8px 0; color: var(--steel); font-size: 11px; }.privacy-note span { width: 6px; height: 6px; border-radius: 50%; background: var(--mint-deep); }

.main-content { width: min(1280px, 100%); margin: 0 auto; padding: 0 40px 76px; }.topbar { min-height: 65px; display: flex; align-items: center; justify-content: space-between; gap: 18px; border-bottom: 1px solid var(--hairline); }.breadcrumb { display: flex; gap: 9px; color: var(--steel); font-size: 13px; }.breadcrumb i { font-style: normal; color: var(--hairline-strong); }.breadcrumb strong { color: var(--ink); font-weight: 500; }.top-actions { display: flex; align-items: center; gap: 8px; }.auth-panel { display: flex; align-items: center; gap: 8px; min-height: 44px; color: var(--slate); font-size: 11px; }.auth-panel > span { max-width: 190px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.auth-panel iframe { border-radius: 999px; } #google-signin { width: 230px; min-width: 230px; height: 44px; overflow: hidden; } #google-signin > div { width: 230px !important; height: 44px !important; overflow: hidden; } #google-signin iframe { display: block !important; box-sizing: border-box !important; width: 230px !important; min-width: 230px !important; max-width: 230px !important; height: 44px !important; min-height: 44px !important; max-height: 44px !important; margin: 0 !important; transform: none !important; zoom: 1 !important; }
.button { min-height: 40px; padding: 9px 16px; border: 1px solid transparent; border-radius: 999px; font-size: 14px; font-weight: 500; transition: transform 160ms var(--ease-out), background 160ms var(--ease-out), border-color 160ms var(--ease-out), color 160ms var(--ease-out); }.button:hover { transform: translateY(-1px); }.button:active { transform: translateY(0) scale(.98); }.button-primary { background: var(--mint); color: var(--ink); }.button-primary:hover { background: var(--mint-deep); }.button-secondary { border-color: var(--hairline-strong); background: var(--canvas); color: var(--ink); }.button-secondary:hover { background: var(--surface); }.button-dark { background: var(--ink); color: var(--on-dark); }.button-dark:hover { background: var(--charcoal); }

.signal-hero { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(305px, .7fr); gap: 36px; min-height: 310px; margin: 32px 0 20px; padding: 42px; overflow: hidden; background: linear-gradient(122deg, #e3fbfe 0%, #f5ffd6 58%, #f9fbf7 100%); border: 1px solid #deebd0; border-radius: var(--radius-lg); position: relative; }.signal-hero::after { content: ""; position: absolute; width: 425px; height: 425px; border: 1px solid rgba(17,24,21,.08); border-radius: 50%; top: -272px; right: 11%; box-shadow: 0 0 0 36px rgba(255,255,255,.24), 0 0 0 72px rgba(255,255,255,.12); pointer-events: none; }.hero-copy { position: relative; z-index: 1; }.hero-copy h1 { max-width: 730px; margin: 13px 0 16px; color: var(--ink); font-size: clamp(40px, 4.7vw, 64px); line-height: 1.05; letter-spacing: -2px; font-weight: 600; }.hero-copy h1 span { display: block; color: #538012; }.hero-copy > p { max-width: 590px; margin: 0; color: var(--charcoal); font-size: 16px; line-height: 1.55; }.capture-path { display: flex; align-items: center; gap: 10px; margin-top: 30px; color: var(--charcoal); font-size: 12px; font-weight: 500; }.capture-path b { color: #5d851c; font: 500 10px "Geist Mono", monospace; margin-right: 5px; }.capture-path i { display: block; width: 33px; height: 1px; background: #9abd66; }
.queue-card { align-self: end; min-height: 203px; padding: 24px; border-radius: var(--radius-lg); color: var(--on-dark); background: var(--ink); box-shadow: var(--shadow-hero); position: relative; z-index: 1; }.queue-card::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 104% -9%, rgba(201,248,74,.38), transparent 32%); pointer-events: none; }.queue-label { position: relative; margin: 0 0 25px; color: var(--mint); font: 500 11px "Geist Mono", monospace; letter-spacing: .4px; }.queue-card h2 { position: relative; margin: 0; max-width: 24ch; font-size: 19px; line-height: 1.3; font-weight: 500; letter-spacing: -.3px; }.queue-card a { position: relative; display: inline-flex; align-items: center; min-height: 36px; margin-top: 21px; color: var(--on-dark); font-size: 12px; font-weight: 500; text-decoration: none; }.queue-card a span { color: var(--mint); margin-left: 6px; }.queue-card a:hover { color: var(--mint); }
.shortcut-banner { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; align-items: center; gap: 14px; padding: 16px 20px; border: 1px solid var(--hairline); border-radius: var(--radius-lg); background: var(--canvas); }.shortcut-icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: var(--radius-md); color: var(--ink); background: var(--mint-soft); font: 500 18px "Geist Mono", monospace; }.shortcut-banner strong { display: block; font-size: 14px; font-weight: 500; }.shortcut-banner p { margin: 3px 0 0; color: var(--slate); font-size: 12px; }.text-button { min-height: 40px; border: 0; background: transparent; color: var(--ink); font-size: 12px; font-weight: 500; white-space: nowrap; }.text-button:hover { text-decoration: underline; text-underline-offset: 3px; }.text-button span { color: #709f22; margin-left: 4px; }

.library-toolbar { display: flex; align-items: center; gap: 16px; padding: 25px 0 18px; border-bottom: 1px solid var(--hairline); }.search-field { min-height: 40px; flex: 1; display: flex; align-items: center; gap: 9px; padding: 0 12px; border: 1px solid var(--hairline); border-radius: var(--radius-md); background: var(--surface); color: var(--slate); }.search-field:focus-within { border: 2px solid var(--mint-deep); padding: 0 11px; }.search-field > span { font-size: 20px; }.search-field input { flex: 1; min-width: 0; outline: 0; border: 0; color: var(--ink); background: transparent; font-size: 13px; }.search-field input::placeholder { color: var(--steel); }.search-field kbd { border: 1px solid var(--hairline-strong); border-radius: 4px; padding: 1px 5px; color: var(--slate); font: 500 10px "Geist Mono", monospace; }.toolbar-selects { display: flex; gap: 8px; }.toolbar-selects select { min-height: 40px; padding: 0 26px 0 10px; border: 1px solid var(--hairline); border-radius: var(--radius-md); background: var(--canvas); color: var(--charcoal); font-size: 12px; }
.workspace-grid { display: grid; grid-template-columns: minmax(0, 1fr) 238px; gap: 32px; padding-top: 29px; }.collection-heading { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 17px; }.collection-heading h2 { margin: 6px 0 0; font-size: 24px; line-height: 1.25; letter-spacing: -.5px; font-weight: 600; }.collection-heading h2 span { color: #5e8f18; }.view-switcher { display: flex; padding: 3px; border: 1px solid var(--hairline); border-radius: var(--radius-md); }.view-switcher button { width: 32px; height: 32px; border: 0; border-radius: 5px; color: var(--steel); background: transparent; }.view-switcher button.is-active { color: var(--ink); background: var(--surface); }.library-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }.signal-card { min-height: 247px; display: flex; flex-direction: column; padding: 20px; border: 1px solid var(--hairline); border-radius: var(--radius-lg); background: var(--canvas); box-shadow: 0 1px 2px rgba(17,24,21,.025); animation: rise 260ms var(--ease-out) both; transition: border-color 160ms var(--ease-out), box-shadow 160ms var(--ease-out), transform 160ms var(--ease-out); }.signal-card:hover { border-color: var(--hairline-strong); box-shadow: var(--shadow-card); transform: translateY(-2px); }.card-header, .card-footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; }.origin-pills, .tag-list { display: flex; flex-wrap: wrap; gap: 5px; }.origin-pill { padding: 3px 6px; border-radius: var(--radius-sm); font: 500 10px "Geist Mono", monospace; text-transform: capitalize; }.origin-pill.liked { color: #9b4b3a; background: #fff0eb; }.origin-pill.bookmarked { color: #8c6214; background: #fff7dc; }.origin-pill.captured { color: #47730f; background: var(--mint-soft); }.more-button { width: 40px; height: 40px; border: 0; border-radius: 50%; color: var(--slate); background: transparent; font-size: 13px; letter-spacing: 1px; }.more-button:hover { color: var(--ink); background: var(--surface); } .card-menu { position: fixed; z-index: 60; width: 206px; padding: 6px; border: 1px solid var(--hairline-strong); border-radius: var(--radius-md); background: var(--canvas); box-shadow: 0 16px 34px rgba(17,24,21,.17); } .card-menu button { width: 100%; min-height: 42px; padding: 9px 10px; border: 0; border-radius: 6px; color: var(--ink); background: transparent; text-align: left; font-size: 12px; font-weight: 500; } .card-menu button:hover, .card-menu button:focus-visible { background: var(--surface); } .card-menu button.is-danger { color: #a33720; } .card-menu button.is-danger:hover, .card-menu button.is-danger:focus-visible { background: #fff0eb; }.card-body { flex: 1; padding: 21px 0 15px; }.card-meta { margin: 0 0 8px; color: var(--steel); font: 400 11px "Geist Mono", monospace; }.card-body h3 { margin: 0; color: var(--ink); font-size: 18px; line-height: 1.35; letter-spacing: -.25px; font-weight: 600; }.card-note { display: -webkit-box; overflow: hidden; margin: 9px 0 0; color: var(--slate); font-size: 12px; line-height: 1.5; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }.tag { padding: 3px 6px; border-radius: var(--radius-sm); color: var(--slate); background: var(--surface); font-size: 10px; }.card-actions { display: flex; align-items: center; gap: 3px; }.action-button { min-height: 36px; padding: 6px 7px; border: 0; border-radius: var(--radius-sm); color: var(--slate); background: transparent; font-size: 11px; font-weight: 500; text-decoration: none; }.action-button:hover { color: var(--ink); background: var(--surface); }.library-grid.is-compact { grid-template-columns: 1fr; gap: 8px; }.library-grid.is-compact .signal-card { min-height: 88px; display: grid; grid-template-columns: 120px minmax(0, 1fr) auto; align-items: center; gap: 16px; padding: 12px 15px; }.library-grid.is-compact .card-body { padding: 0; }.library-grid.is-compact .card-note { display: none; }.library-grid.is-compact .card-footer { justify-content: end; }.library-grid.is-compact .tag-list { display: none; }
.insight-rail { display: grid; align-content: start; gap: 12px; }.rail-card { padding: 20px; border: 1px solid var(--hairline); border-radius: var(--radius-lg); background: var(--canvas); }.stats-list { margin: 19px 0 0; }.stats-list div { display: flex; align-items: baseline; justify-content: space-between; padding: 11px 0; border-top: 1px solid var(--hairline); }.stats-list div:first-child { border-top: 0; padding-top: 0; }.stats-list dt { color: var(--slate); font-size: 12px; }.stats-list dd { margin: 0; color: var(--ink); font: 500 17px "Geist Mono", monospace; letter-spacing: -.6px; }.rail-card-accent { border-color: #d6e9aa; background: var(--mint-soft); }.rail-card-accent h2 { margin: 11px 0 9px; font-size: 18px; line-height: 1.3; letter-spacing: -.3px; }.rail-card-accent p:not(.eyebrow) { margin: 0 0 17px; color: var(--charcoal); font-size: 12px; line-height: 1.55; }.rail-card-accent .button { width: 100%; }
.empty-state { padding: 55px 20px; border: 1px dashed var(--hairline-strong); border-radius: var(--radius-lg); text-align: center; background: var(--surface); }.empty-state > span { color: #679b19; font-size: 35px; }.empty-state h3 { margin: 7px 0 5px; font-size: 19px; font-weight: 600; }.empty-state p { max-width: 34ch; margin: 0 auto 18px; color: var(--slate); font-size: 13px; }

.capture-dialog { width: min(650px, calc(100% - 28px)); padding: 0; overflow: hidden; border: 1px solid var(--hairline); border-radius: var(--radius-lg); color: var(--ink); background: var(--canvas); box-shadow: 0 28px 75px rgba(17,24,21,.24); }.capture-dialog::backdrop { background: rgba(17,24,21,.35); backdrop-filter: blur(3px); }.capture-dialog form { padding: 27px; }.dialog-header { display: flex; align-items: start; justify-content: space-between; gap: 18px; margin-bottom: 24px; }.dialog-header h2 { margin: 7px 0 0; font-size: 28px; line-height: 1.2; letter-spacing: -.6px; }.icon-button { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid var(--hairline); border-radius: 50%; background: var(--canvas); color: var(--ink); font-size: 23px; }.icon-button:hover { background: var(--surface); }.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }.form-field { display: grid; gap: 7px; color: var(--charcoal); font-size: 12px; font-weight: 500; }.form-field span { color: #8c381f; font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: .4px; }.form-field small { color: var(--steel); font-size: 11px; font-weight: 400; }.field-wide { grid-column: 1 / -1; }.form-field input, .form-field select, .form-field textarea { min-height: 40px; width: 100%; padding: 9px 11px; border: 1px solid var(--hairline-strong); border-radius: var(--radius-md); color: var(--ink); background: var(--canvas); font-size: 13px; font-weight: 400; resize: vertical; }.form-field textarea { min-height: 82px; }.form-field input::placeholder, .form-field textarea::placeholder { color: var(--steel); }.form-field input:focus, .form-field select:focus, .form-field textarea:focus { border: 2px solid var(--mint-deep); outline: 0; padding: 8px 10px; }.dialog-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--hairline); }.dialog-footer p { margin: 0; color: var(--slate); font-size: 11px; }
.classify-dialog { width: min(720px, calc(100% - 28px)); }.classify-intro { max-width: 62ch; margin: -8px 0 22px; color: var(--slate); font-size: 13px; line-height: 1.55; }.classification-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; margin: 0; padding: 0; border: 0; }.classification-options legend { margin-bottom: 9px; color: var(--steel); font: 500 10px "Geist Mono", monospace; letter-spacing: .4px; text-transform: uppercase; }.classification-options label { display: flex; align-items: flex-start; gap: 10px; min-height: 88px; padding: 13px; border: 1px solid var(--hairline); border-radius: var(--radius-md); cursor: pointer; transition: border-color 160ms var(--ease-out), background 160ms var(--ease-out); }.classification-options label:has(input:checked) { border-color: #9fc943; background: var(--mint-soft); }.classification-options input { width: 16px; height: 16px; margin: 2px 0 0; accent-color: #679b19; }.classification-options strong, .classification-options small { display: block; }.classification-options strong { color: var(--ink); font-size: 13px; }.classification-options small { margin-top: 4px; color: var(--slate); font-size: 11px; line-height: 1.35; }.classify-dialog #custom-labels-field { margin-top: 14px; }.classify-dialog #custom-labels-field[hidden] { display: none; }.dialog-actions { display: flex; align-items: center; gap: 8px; }
.toast { position: fixed; z-index: 20; right: 24px; bottom: 24px; max-width: min(390px, calc(100% - 48px)); padding: 12px 15px; border-radius: var(--radius-md); color: var(--on-dark); background: var(--ink); box-shadow: var(--shadow-hero); font-size: 13px; transform: translateY(18px); opacity: 0; pointer-events: none; transition: transform 220ms var(--ease-out), opacity 220ms var(--ease-out); }.toast.is-visible { transform: translateY(0); opacity: 1; }
@keyframes rise { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 1100px) { .main-content { padding: 0 28px 64px; }.workspace-grid { grid-template-columns: 1fr; }.insight-rail { grid-template-columns: 1fr 1fr; }.signal-hero { padding: 34px; gap: 25px; } }
@media (max-width: 820px) { .app-frame { grid-template-columns: 1fr; }.sidebar { position: sticky; top: 0; height: auto; max-height: none; overflow: visible; padding: 14px 18px; border-right: 0; border-bottom: 1px solid var(--hairline); }.brand-lockup { margin: 0 0 10px; }.sidebar-nav { display: flex; gap: 2px; margin: 0; overflow-x: auto; }.nav-label, .sidebar-section { display: none; }.sidebar-footer { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 8px; margin-top: 10px; padding: 10px 0 0; }.sidebar-footer .sidebar-action { min-height: 44px; padding: 8px 4px; }.sidebar-footer .privacy-note { grid-column: 1 / -1; margin: 4px 4px 0; }.shelf-link { flex: 0 0 auto; width: auto; }.main-content { padding: 0 20px 48px; }.signal-hero { grid-template-columns: 1fr; }.queue-card { max-width: 520px; }.library-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 610px) { .topbar { min-height: 62px; align-items: start; padding: 10px 0; }.top-actions { flex-wrap: wrap; justify-content: end; }.auth-panel > span { display: none; }.button { min-height: 44px; }.button-secondary { display: none; }.signal-hero { margin-top: 20px; min-height: 0; padding: 28px 20px; }.hero-copy h1 { font-size: 38px; letter-spacing: -1.2px; }.hero-copy > p { font-size: 14px; }.capture-path { gap: 6px; font-size: 10px; }.capture-path i { width: 16px; }.shortcut-banner { grid-template-columns: 40px minmax(0, 1fr); padding: 14px; }.shortcut-banner .text-button { grid-column: 2; justify-self: start; min-height: 34px; }.toolbar-selects { width: 100%; }.library-toolbar { align-items: stretch; flex-direction: column; }.toolbar-selects select { flex: 1; min-width: 0; }.library-grid { grid-template-columns: 1fr; }.workspace-grid { padding-top: 22px; }.insight-rail { grid-template-columns: 1fr; }.collection-heading h2 { font-size: 21px; }.view-switcher button { width: 40px; height: 40px; }.library-grid.is-compact .signal-card { grid-template-columns: 1fr; gap: 9px; }.library-grid.is-compact .card-footer { justify-content: space-between; }.form-grid { grid-template-columns: 1fr; }.field-wide { grid-column: auto; }.capture-dialog form { padding: 21px; }.icon-button { width: 44px; height: 44px; }.dialog-footer { align-items: start; flex-direction: column; }.classification-options { grid-template-columns: 1fr; }.form-field input, .form-field select { min-height: 44px; }.action-button, .more-button { min-height: 44px; min-width: 44px; }.action-button { display: inline-grid; place-items: center; }.toast { right: 16px; bottom: 16px; max-width: calc(100% - 32px); } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }

/* Rams review refinements: every direct control has a comfortable 44px target. */
.shelf-link,
.source-option,
.sidebar-action,
.button,
.text-button,
.search-field,
.toolbar-selects select,
.action-button,
.more-button,
.icon-button,
.form-field input,
.form-field select { min-height: 44px; }

.view-switcher button,
.more-button,
.icon-button { width: 44px; height: 44px; }

.action-button { min-width: 44px; display: inline-grid; place-items: center; }
