/* Self-hosted fonts (SIL Open Font License): no third-party request on each page. */
@font-face {
  font-family:'DM Sans';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url("fonts/dmsans-latin-ext.49935c4b6235.woff2") format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
  font-family:'DM Sans';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url("fonts/dmsans-latin.7c87a648293f.woff2") format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
  font-family:'Manrope';
  font-style:normal;
  font-weight:400 800;
  font-display:swap;
  src:url("fonts/manrope-greek.42b71be38af5.woff2") format('woff2');
  unicode-range:U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF
}

@font-face {
  font-family:'Manrope';
  font-style:normal;
  font-weight:400 800;
  font-display:swap;
  src:url("fonts/manrope-latin-ext.6d36d5bdedfa.woff2") format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF
}

@font-face {
  font-family:'Manrope';
  font-style:normal;
  font-weight:400 800;
  font-display:swap;
  src:url("fonts/manrope-latin.938c6e8019b6.woff2") format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

:root {
  color-scheme:light;
  --ink:#17202b;
  --muted:#667085;
  --accent:#005b52;
  --accent-soft:#e2f0ec;
  --line:#e1e6e6;
  --paper:#f7f9f7;
  --white:#fff;
  --danger:#a53d36
}

* {
  box-sizing:border-box
}

body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font:16px/1.55 'DM Sans',sans-serif
}

h1,h2,h3,p {
  margin-top:0
}

h1,h2,h3,.brand {
  font-family:Manrope,sans-serif;
  letter-spacing:-.035em
}

h1 {
  font-size:clamp(2.3rem,5vw,4.6rem);
  line-height:1.08;
  font-weight:800;
  margin-bottom:.67em
}

h2 {
  font-size:1.25rem;
  font-weight:700;
  margin-bottom:.83em
}

p {
  margin-bottom:1em
}

a {
  color:var(--accent);
  text-decoration:none
}

a:hover {
  text-decoration:underline
}

button,input,select,textarea {
  font:inherit
}

.site-header {
  height:76px;
  padding:0 max(24px,calc((100vw - 1180px)/2));
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:#fff;
  border-bottom:1px solid var(--line);
  gap:24px
}

.brand {
  font-size:1.4rem;
  font-weight:800;
  color:var(--ink);
  white-space:nowrap
}

.brand span {
  color:var(--accent)
}

.site-header nav {
  display:flex;
  gap:19px;
  align-items:center;
  flex-wrap:wrap
}

.site-header nav>a,.text-button {
  color:#4c5b60;
  font-weight:600;
  font-size:.9rem
}

.text-button {
  border:0;
  background:none;
  cursor:pointer;
  padding:0
}

.nav-button {
  background:var(--accent);
  color:#fff!important;
  padding:9px 15px;
  border-radius:9px
}

.container {
  width:min(1180px,calc(100% - 48px));
  margin:0 auto;
  min-height:calc(100vh - 150px);
  padding:54px 0 80px
}

.site-footer {
  padding:24px max(24px,calc((100vw - 1180px)/2));
  display:flex;
  justify-content:space-between;
  color:var(--muted);
  border-top:1px solid var(--line);
  font-size:.85rem
}

.eyebrow {
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.74rem;
  color:var(--accent);
  font-weight:800;
  margin-bottom:12px
}

.lead {
  font-size:1.18rem;
  color:var(--muted);
  max-width:580px
}

.hero h1 em {
  font-style:normal;
  color:var(--accent)
}

.hero-card {
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 30px 80px #193e3217;
  border-radius:22px;
  padding:26px;
  transform:rotate(2deg)
}

.card-heading {
  font-weight:800;
  margin-bottom:28px
}

.dot {
  display:inline-block;
  width:10px;
  height:10px;
  background:#3cae8e;
  border-radius:50%;
  margin-right:8px
}

.mock-row {
  padding:17px 0;
  border-top:1px solid var(--line);
  display:flex;
  justify-content:space-between;
  gap:12px
}

.mock-row strong {
  color:var(--accent);
  font-size:.82rem
}

.feature-grid article,.panel {
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow:0 8px 30px #16382a08
}

.feature-grid article {
  padding:32px
}

.feature-grid p,.page-heading p,.subtle {
  color:var(--muted)
}

.feature-icon {
  display:block;
  color:var(--accent);
  font-family:Manrope;
  font-weight:800;
  margin-bottom:24px
}

.button {
  border:1px solid var(--accent);
  border-radius:10px;
  background:var(--accent);
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:11px 18px;
  font-weight:700;
  cursor:pointer;
  text-align:center
}

.button:hover {
  background:#064c45;
  color:#fff;
  text-decoration:none
}

.button.secondary {
  background:#fff;
  color:var(--accent)
}

.button.secondary:hover {
  background:var(--accent-soft)
}

.button.danger {
  background:#fff;
  color:var(--danger);
  border-color:#e9c6c2
}

.button.danger:hover {
  background:#fff4f2
}

.button.full {
  width:100%
}

.actions {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap
}

.inline {
  display:inline
}

.panel {
  padding:26px
}

.page-heading {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:30px
}

.page-heading h1 {
  font-size:2.5rem;
  margin-bottom:6px
}

.page-heading p {
  margin-bottom:0
}

.stat strong {
  display:block;
  font-family:Manrope;
  font-size:2.2rem;
  line-height:1.1
}

.stat span {
  color:var(--muted)
}

.section-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  margin-bottom:10px
}

.section-heading h2 {
  margin-bottom:0
}

.section-heading a {
  font-size:.9rem;
  font-weight:700
}

.list-row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:16px 4px;
  border-top:1px solid var(--line);
  color:var(--ink)
}

.list-row:first-child {
  border-top:0
}

.list-row:hover {
  text-decoration:none;
  color:var(--accent)
}

.list-row small {
  display:block;
  color:var(--muted);
  font-size:.83rem;
  margin-top:3px
}

.list-row time {
  color:var(--muted);
  font-size:.85rem;
  white-space:nowrap
}

.list-panel {
  padding:10px 26px
}

.empty {
  color:var(--muted);
  padding:20px 0
}

.margin-top {
  margin-top:20px
}

.auth-card {
  max-width:440px;
  margin:50px auto;
  padding:35px
}

.auth-card h1 {
  font-size:2rem
}

.auth-card p:last-child {
  margin-bottom:0
}

.auth-card .button.secondary {
  margin-top:12px
}

form label {
  display:block;
  font-weight:700;
  font-size:.9rem;
  margin:0 0 18px
}

input:not([type=checkbox]),select,textarea {
  display:block;
  width:100%;
  margin-top:7px;
  border:1px solid #cdd7d5;
  border-radius:9px;
  padding:11px 12px;
  background:#fff;
  color:var(--ink);
  outline:none
}

input:focus,select:focus,textarea:focus {
  border-color:var(--accent);
  box-shadow:0 0 0 3px #0b776b24
}

textarea {
  min-height:110px;
  resize:vertical
}

.form-panel {
  max-width:800px
}

.checkbox {
  font-weight:500;
  display:flex;
  align-items:center;
  gap:10px
}

.checkbox input {
  width:17px;
  height:17px
}

.detail-label {
  display:block;
  text-transform:capitalize;
  color:var(--muted);
  font-size:.82rem
}

.detail-grid strong {
  display:block;
  overflow-wrap:anywhere
}

.alert {
  padding:12px 15px;
  border-radius:9px
}

.alert.error {
  background:#fff0ee;
  color:#8e2f2a
}

.alert.success {
  background:#e4f3ed;
  color:#116a4c
}

.price-card h2 {
  font-size:2rem
}

.stacked-actions {
  display:flex;
  flex-wrap:wrap;
  gap:10px
}

.ai-answer {
  background:var(--accent-soft);
  padding:18px;
  border-radius:12px;
  margin-bottom:20px
}

@media(max-width:900px) {
  .site-header {
    height:auto;
    padding:16px 24px;
    align-items:flex-start
  }
  .site-header nav {
    gap:10px
  }
}

@media(max-width:600px) {
  .container {
    width:calc(100% - 32px);
    padding:35px 0 60px
  }
  .site-header {
    display:block
  }
  .site-header nav {
    margin-top:12px
  }
  .site-footer {
    padding:20px 16px
  }
  .page-heading {
    align-items:flex-start;
    flex-direction:column
  }
  .hero-card {
    transform:none
  }
  .panel {
    padding:20px
  }
}

/* Keyboard, touch and narrow-screen support */ .skip-link {
  position:absolute;
  top:-100px;
  left:12px;
  z-index:100;
  background:#fff;
  padding:12px 18px;
  border:2px solid var(--accent);
  border-radius:8px
}

.skip-link:focus {
  top:12px
}

:where(a,button,input,select,textarea,summary):focus-visible {
  outline:3px solid #bf7842;
  outline-offset:3px
}

.mobile-nav {
  display:none
}

.mobile-nav summary {
  list-style:none;
  cursor:pointer;
  border:1px solid var(--line);
  padding:10px 14px;
  border-radius:8px;
  font-weight:700
}

.mobile-nav summary::-webkit-details-marker {
  display:none
}

.mobile-nav nav {
  display:grid;
  position:absolute;
  z-index:20;
  right:16px;
  left:16px;
  top:68px;
  background:#fff;
  box-shadow:0 18px 38px #17202b25;
  border:1px solid var(--line);
  border-radius:12px;
  padding:10px
}

.mobile-nav nav a,.mobile-nav nav button {
  min-height:44px;
  display:flex;
  align-items:center;
  padding:10px 12px
}

.mobile-nav nav form {
  margin:0
}

.mobile-nav nav button {
  width:100%
}

@media(max-width:900px) {
  .site-header {
    min-height:68px;
    height:auto;
    display:flex;
    align-items:center;
    position:relative
  }
  .desktop-nav {
    display:none!important
  }
  .mobile-nav {
    display:block
  }
}

@media(max-width:600px) {
  .site-header {
    padding:12px 16px
  }
  .container {
    width:calc(100% - 32px)
  }
  .site-footer {
    display:block
  }
  .site-footer span {
    display:block
  }
  .page-heading h1 {
    font-size:2rem
  }
  .hero h1 {
    font-size:clamp(2.4rem,12vw,3.5rem)
  }
  .stat strong {
    font-size:1.7rem
  }
  .list-row {
    align-items:flex-start
  }
  .list-row>span:last-child {
    overflow-wrap:anywhere;
    text-align:right
  }
  input:not([type=checkbox]),select,textarea {
    font-size:16px
  }
}

@media(max-width:380px) {
  .stat {
    padding:14px
  }
  .actions>.button {
    width:100%
  }
  .page-heading .actions {
    width:100%
  }
  .page-heading .actions form,.page-heading .actions .button {
    width:100%
  }
}

/* Cross-fade between pages instead of flashing; the header stays put. */
@view-transition {
  navigation:auto
}
::view-transition-old(root),::view-transition-new(root) {
  animation-duration:.15s
}
.site-header {
  view-transition-name:site-header
}

@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after {
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    transition-duration:.01ms!important
  }
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*) {
    animation:none!important
  }
}

.header-tools {
  display:flex;
  align-items:center;
  gap:6px
}

.header-tools form {
  margin:0
}

.tool-button {
  border:1px solid var(--line);
  background:var(--white);
  color:var(--ink);
  border-radius:8px;
  min-width:38px;
  min-height:38px;
  cursor:pointer;
  font-weight:700
}

.tool-button:hover {
  background:var(--accent-soft)
}

:root[data-theme=dark] {
  color-scheme:dark;
  --ink:#e7eeec;
  --muted:#aebfbb;
  --accent:#82d7c5;
  --accent-soft:#173c39;
  --line:#34504b;
  --paper:#112320;
  --white:#1b302c;
  --danger:#ffa39c
}

:root[data-theme=dark] .site-header,:root[data-theme=dark] .panel,:root[data-theme=dark] .feature-grid article,:root[data-theme=dark] .hero-card,:root[data-theme=dark] .mobile-nav nav {
  background:var(--white)
}

:root[data-theme=dark] input:not([type=checkbox]),:root[data-theme=dark] select,:root[data-theme=dark] textarea {
  background:#172925;
  color:var(--ink);
  border-color:var(--line)
}

:root[data-theme=dark] .button {
  color:#10231f;
  background:var(--accent)
}

:root[data-theme=dark] .button.secondary,:root[data-theme=dark] .button.danger {
  background:transparent;
  color:var(--accent)
}

:root[data-theme=dark] .nav-button {
  background:var(--accent);
  color:#10231f!important
}

:root[data-theme=dark] .mobile-nav summary {
  color:var(--ink)
}

@media(max-width:1100px) {
  .desktop-nav {
    display:none!important
  }
  .mobile-nav {
    display:block
  }
  .site-header {
    height:auto;
    min-height:68px;
    position:relative
  }
}

@media(max-width:600px) {
  .site-header {
    display:flex;
    gap:8px
  }
  .brand {
    font-size:1.25rem
  }
  .header-tools {
    margin-left:auto
  }
  .tool-button {
    min-width:34px;
    min-height:38px
  }
  .mobile-nav summary {
    padding:8px 10px
  }
}

.chat-history {
  display:flex;
  flex-direction:column;
  gap:12px;
  max-height:55vh;
  overflow:auto;
  margin-bottom:20px
}

.chat-bubble {
  max-width:85%;
  padding:12px 16px;
  border-radius:12px;
  white-space:pre-wrap;
  overflow-wrap:anywhere
}

.chat-bubble.user {
  align-self:flex-end;
  background:var(--accent);
  color:#fff
}

.chat-bubble.assistant {
  align-self:flex-start;
  background:var(--accent-soft);
  color:var(--ink)
}

:root[data-theme=dark] .chat-bubble.user {
  color:#10231f
}

:root[data-theme=dark] .site-header nav>a,:root[data-theme=dark] .text-button {
  color:var(--ink)
}

@media(max-width:600px) {
  .site-header {
    padding-left:max(16px,env(safe-area-inset-left));
    padding-right:max(16px,env(safe-area-inset-right))
  }
  .container {
    width:auto;
    margin-left:max(16px,env(safe-area-inset-left));
    margin-right:max(16px,env(safe-area-inset-right))
  }
}

.tool-button {
  min-width:44px;
  min-height:44px
}

.mobile-nav summary {
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:center
}

@media(max-width:600px) {
  .tool-button {
    min-width:44px;
    min-height:44px
  }
}

@media(max-width:380px) {
  .brand {
    font-size:1.1rem
  }
  .header-tools {
    gap:3px
  }
  .site-header {
    gap:4px
  }
}

.device-photo {
  margin:0 0 20px;
  border-radius:14px;
  overflow:hidden;
  max-width:580px;
  background:var(--accent-soft)
}

.device-photo img {
  display:block;
  width:100%;
  max-height:400px;
  object-fit:contain
}

.list-thumb {
  width:52px;
  height:52px;
  object-fit:cover;
  border-radius:10px;
  flex:none;
  background:var(--accent-soft)
}

.list-row .item-info {
  flex:1;
  min-width:0
}

/* ---- Polish: touch feedback, badges, stats, details, chat, phone tab bar ---- */
html {
  -webkit-text-size-adjust:100%
}

body {
  -webkit-tap-highlight-color:transparent
}

a,button,summary {
  touch-action:manipulation
}

.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  margin:-1px;
  padding:0;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
  border:0
}

.site-header {
  position:sticky;
  top:0;
  z-index:30
}

.button {
  transition:background-color .15s,border-color .15s,transform .1s
}

.button:active {
  transform:scale(.98)
}

.button:disabled {
  opacity:.55;
  cursor:default;
  transform:none
}

.badge {
  display:inline-flex;
  align-items:center;
  padding:4px 10px;
  border-radius:999px;
  font-size:.76rem;
  font-weight:700;
  line-height:1.3;
  white-space:nowrap;
  flex:none
}

.badge.success {
  background:#e3f4ec;
  color:#11684a
}

.badge.warning {
  background:#fdf1dc;
  color:#8a5a00
}

.badge.danger {
  background:#fdeceb;
  color:#a3322b
}

.badge.neutral {
  background:#eef1f1;
  color:var(--muted)
}

.page-heading .badge {
  margin-top:12px
}

.stat {
  display:flex;
  flex-direction:column;
  gap:2px;
  padding:20px;
  color:var(--ink);
  transition:border-color .15s,transform .15s
}

.stat:hover {
  text-decoration:none;
  border-color:var(--accent);
  transform:translateY(-1px)
}

.stat-icon {
  width:22px;
  height:22px;
  margin-bottom:12px;
  fill:none;
  stroke:var(--accent);
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round
}

.stat.danger {
  border-color:#f0c9c5
}

.stat.danger strong {
  color:var(--danger)
}

.stat.danger .stat-icon {
  stroke:var(--danger)
}

.list-row .item-info strong {
  display:block;
  font-weight:600
}

.row-arrow {
  color:var(--muted)
}

.list-row:hover .row-arrow {
  color:var(--accent)
}

.detail-label {
  text-transform:none;
  font-weight:600;
  font-size:.8rem;
  margin-bottom:4px
}

.detail-value {
  display:block;
  font-weight:600;
  overflow-wrap:anywhere
}

.quick-add h2 {
  margin-bottom:14px
}

.quick-add-links {
  display:flex;
  flex-wrap:wrap;
  gap:8px
}

.quick-add-links a {
  padding:9px 14px;
  border:1px dashed #b9c7c4;
  border-radius:999px;
  font-weight:600;
  font-size:.9rem
}

.quick-add-links a:hover {
  border-color:var(--accent);
  background:var(--accent-soft);
  text-decoration:none
}

.chat-panel {
  max-width:860px
}

.chat-history {
  max-height:min(60vh,600px);
  scroll-behavior:smooth;
  overscroll-behavior:contain
}

.chat-history:empty {
  display:none
}

.chat-bubble {
  line-height:1.5;
  animation:bubble-in .18s ease-out
}

.chat-bubble.user {
  border-bottom-right-radius:4px
}

.chat-bubble.assistant {
  border-bottom-left-radius:4px
}

.chat-bubble.error {
  align-self:stretch;
  max-width:none;
  background:#fff0ee;
  color:#8e2f2a
}

.chat-bubble.typing {
  min-width:64px;
  min-height:44px;
  display:flex;
  align-items:center
}

.chat-bubble.typing::after {
  content:"";
  width:7px;
  height:7px;
  margin-right:24px;
  border-radius:50%;
  background:currentColor;
  box-shadow:12px 0 0 currentColor,24px 0 0 currentColor;
  animation:typing 1s ease-in-out infinite
}

@keyframes typing {
  0%,100% {
    opacity:.25
  }
  50% {
    opacity:.8
  }
}

@keyframes bubble-in {
  from {
    opacity:0;
    transform:translateY(4px)
  }
}

.chat-suggestions {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:16px
}

.chat-suggestions button {
  border:1px solid var(--line);
  background:var(--white);
  color:var(--ink);
  border-radius:999px;
  padding:9px 14px;
  font-weight:600;
  font-size:.88rem;
  text-align:left;
  cursor:pointer
}

.chat-suggestions button:hover {
  border-color:var(--accent);
  background:var(--accent-soft)
}

.chat-composer {
  display:flex;
  align-items:flex-end;
  gap:10px
}

.chat-composer textarea {
  margin:0;
  min-height:50px;
  max-height:180px;
  padding:13px 14px;
  border-radius:14px;
  line-height:1.45;
  resize:none;
  overflow-y:hidden
}

.chat-send {
  flex:none;
  width:50px;
  height:50px;
  padding:0;
  border-radius:14px
}

.chat-send svg {
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round
}

.chat-note {
  margin:10px 0 0;
  font-size:.8rem
}

.tab-bar {
  display:none
}

@media(max-width:900px) {
  .has-tabs .mobile-nav,.has-tabs .site-footer {
    display:none!important
  }
  .has-tabs {
    padding-bottom:calc(68px + env(safe-area-inset-bottom))
  }
  .tab-bar {
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:40;
    display:grid;
    grid-template-columns:repeat(5,1fr);
    padding:6px max(8px,env(safe-area-inset-left)) calc(6px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-right));
    background:var(--white);
    background:color-mix(in srgb,var(--white) 90%,transparent);
    -webkit-backdrop-filter:saturate(1.6) blur(14px);
    backdrop-filter:saturate(1.6) blur(14px);
    border-top:1px solid var(--line);
    view-transition-name:tab-bar
  }
  .tab-bar>a,.tab-more summary {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    min-height:52px;
    border-radius:12px;
    color:var(--muted);
    font-size:.7rem;
    font-weight:600;
    list-style:none;
    cursor:pointer
  }
  .tab-bar>a:hover {
    text-decoration:none
  }
  .tab-bar svg {
    width:23px;
    height:23px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round
  }
  .tab-bar [aria-current=page],.tab-more.is-current summary,.tab-more[open] summary {
    color:var(--accent)
  }
  .tab-bar [aria-current=page] svg {
    stroke-width:2.3
  }
  .tab-more {
    position:relative
  }
  .tab-more summary::-webkit-details-marker {
    display:none
  }
  .tab-more-menu {
    position:absolute;
    right:0;
    bottom:calc(100% + 12px);
    display:grid;
    min-width:210px;
    padding:6px;
    background:var(--white);
    border:1px solid var(--line);
    border-radius:14px;
    box-shadow:0 18px 38px #17202b25
  }
  .tab-more-menu form {
    margin:0
  }
  .tab-more-menu a,.tab-more-menu button {
    display:flex;
    align-items:center;
    width:100%;
    min-height:46px;
    padding:10px 14px;
    border:0;
    border-radius:10px;
    background:none;
    color:var(--ink);
    font-weight:600;
    font-size:.95rem;
    text-align:left;
    cursor:pointer
  }
  .tab-more-menu a:hover,.tab-more-menu button:hover {
    background:var(--accent-soft);
    text-decoration:none
  }
  .chat-history {
    max-height:max(240px,calc(100dvh - 400px))
  }
}

@media(max-width:600px) {
  .page-heading {
    margin-bottom:22px
  }
  .page-heading>.button {
    width:100%
  }
  .stat {
    padding:16px
  }
  .stat-icon {
    margin-bottom:8px
  }
  .list-row {
    align-items:center
  }
  .list-row .badge {
    font-size:.72rem
  }
}

:root[data-theme=dark] .badge.success {
  background:#173c30;
  color:#8fe0bf
}

:root[data-theme=dark] .badge.warning {
  background:#3d3217;
  color:#f3c872
}

:root[data-theme=dark] .badge.danger,:root[data-theme=dark] .chat-bubble.error {
  background:#44211f;
  color:#ffb3ad
}

:root[data-theme=dark] .badge.neutral {
  background:#22332f;
  color:var(--muted)
}

:root[data-theme=dark] .stat.danger {
  border-color:#6b3430
}

:root[data-theme=dark] .quick-add-links a {
  border-color:var(--line)
}

.nowrap {
  white-space:nowrap
}

.notify-options {
  margin:0 0 0 27px;
  padding:0;
  border:0;
  transition:opacity .15s
}

.notify-options[inert] {
  opacity:.45
}
