/* Matcha shared design primitives. */
@font-face{font-family:Peyda;src:url('./fonts/peyda-regular.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:Peyda;src:url('./fonts/peyda-bold.woff') format('woff');font-weight:700;font-display:swap}
:root{--brand:#3cd5af;--on-brand:#213d42;--brand-soft:#e8faf5;--mint:#3cd5af;--accent:#213d42;--teal:#3cd5af;--ink:#213d42;--muted:#536b70;--paper:#f5fcfa;--surface:#fff;--line:#d8f7ef;--night:#213d42;--lime:#3cd5af;--shadow:0 6px 20px #213d4206;--radius:18px;font-family:Peyda,Tahoma,sans-serif;color:var(--ink);background:#e8faf5;font-synthesis:none;color-scheme:light}
*{box-sizing:border-box}
html{min-height:100%;scrollbar-gutter:stable}
body{margin:0;font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}
body.sheet-open{overflow:hidden}
button,input,textarea{font:inherit}
button,a,input,textarea{-webkit-tap-highlight-color:transparent}
button{border:0;cursor:pointer;color:inherit;touch-action:manipulation}
button:disabled{cursor:default}
button,a{outline-offset:4px}
button:focus-visible,a:focus-visible{outline:2px solid var(--accent)}
input:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
a{color:inherit;text-decoration:none}
h1,h2,h3,p{margin:0}
h1,h2,h3,strong,b{font-weight:700}
h1,h2{line-height:1.6}
img{display:block;max-width:100%;object-fit:cover}
svg{display:block}
.icon{width:22px;height:22px;flex-shrink:0}
.icon-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:transparent;padding:11px;border-radius:13px;transition:background .18s}
.icon-button:hover{background:#3cd5af0b}
.primary,.outline{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;transition:background .18s,border-color .18s}
.primary{min-height:48px;border-radius:13px;padding:10px 17px;background:var(--brand);color:var(--ink);font-size:14px;box-shadow:0 4px 10px #213d420a}
.primary:hover{background:#9eead7}
.primary:disabled{background:#e8faf5;color:#536b70;box-shadow:none}
.primary .icon{width:19px;height:19px}
.outline{border:1px solid #bbf0e3;background:transparent;border-radius:10px;color:var(--accent);min-height:34px;padding:4px 12px;font-size:12px;white-space:nowrap}
.outline:hover{background:#effcf9;border-color:#3cd5af}
.full{width:100%}
.empty-state{text-align:center;padding:25px 12px;color:var(--muted)}
.empty-state>.icon{width:34px;height:34px;margin:0 auto 14px;color:var(--accent)}
.empty-state h2{font-size:16px;color:var(--ink)}
.empty-state p{font-size:14px;margin:8px 0}
.empty-state small{font-size:12px}
.empty-state .outline{margin-top:14px}
.sample-note{font-size:11px;color:#536b70;text-align:center;margin:17px 0;line-height:1.9}
.integration-note{border:1px solid var(--line);background:#effcf9;color:#536b70;font-size:12px;border-radius:12px;padding:11px 13px;line-height:1.9;margin:14px 0}
.section-heading{display:flex;align-items:center;gap:8px;font-size:14px;margin:21px 0 11px}
.section-heading:before{content:'';width:3px;height:14px;border-radius:4px;background:var(--mint)}
.muted{color:var(--muted);font-size:13px}
.status-dot{display:inline-block;background:var(--mint);width:5px;height:5px;border-radius:50%;vertical-align:middle;margin-left:4px}
.toast{position:fixed;bottom:calc(26px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%,12px);z-index:50;background:#213d42f5;color:#fff;padding:11px 16px;border:1px solid #ffffff1a;border-radius:13px;font-size:12px;text-align:center;width:max-content;max-width:min(88vw,440px);opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;box-shadow:0 8px 28px #213d4226}
.toast.visible{opacity:1;transform:translate(-50%,0)}
.app-sheet .toast{z-index:10}
.image-unavailable{background:#e8faf5;color:#536b70;font-size:12px;text-align:center}
@media(min-width:700px){body{padding:20px 0}}
@media(max-width:699px){html{scrollbar-gutter:auto;scrollbar-width:none}html::-webkit-scrollbar,.app-sheet::-webkit-scrollbar{display:none}.matcha-app-body .app-sheet{scrollbar-width:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}