@import"https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6,400;0,6,500;1,6,400;1,6,500&family=Geist:wght@300;400;500;600;700&family=Geist+Mono:wght@400;500&display=swap";html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);color:var(--fg-primary);background:var(--bg-app);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.container{width:100%;max-width:1240px;margin:0 auto;padding:0 20px}@media (min-width: 900px){.container{padding:0 40px}}.nav{position:sticky;top:0;z-index:50;height:64px;display:flex;align-items:center;background:#fdfbf5d9;-webkit-backdrop-filter:saturate(160%) blur(12px);backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--border-subtle)}.nav-inner{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.nav-brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:22px;letter-spacing:-.015em;color:var(--ink-900);text-decoration:none}.nav-brand em{font-style:italic;color:var(--sage-600)}.nav-brand .mark{width:28px;height:28px;border-radius:7px;background:var(--linen-100);display:grid;place-items:center;overflow:hidden}.nav-brand .mark img{width:88%;height:88%;object-fit:contain;mix-blend-mode:multiply}.nav-links{display:none;gap:22px}@media (min-width: 900px){.nav-links{display:flex;align-items:center}}.nav-links a{font:500 14px var(--font-sans);color:var(--ink-700);text-decoration:none}.nav-links a:hover{color:var(--sage-600)}.nav-cta{display:none;align-items:center;gap:6px}@media (min-width: 900px){.nav-cta{display:flex}}.nav-mobile-btn{display:flex;background:transparent;border:none;padding:8px;cursor:pointer;color:var(--ink-900)}@media (min-width: 900px){.nav-mobile-btn{display:none}}.nav-mobile-menu{position:fixed;top:64px;left:0;right:0;background:var(--bg-surface);padding:20px;border-bottom:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:16px;box-shadow:var(--shadow-md);z-index:40}.nav-mobile-menu a{font:500 16px var(--font-sans);color:var(--ink-700);text-decoration:none;padding:8px 0;border-bottom:1px solid var(--linen-200)}.nav-mobile-menu .nav-cta-mobile{display:flex;flex-direction:column;gap:10px;margin-top:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 18px;border-radius:var(--r-md);font:500 14px var(--font-sans);border:1px solid transparent;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}.btn-ghost{background:transparent;color:var(--ink-700)}.btn-ghost:hover{background:var(--sage-50);color:var(--sage-700)}.btn-lg{height:50px;padding:0 22px;font-size:15.5px}.eb{font:500 11px var(--font-sans);text-transform:uppercase;letter-spacing:.14em;color:var(--sage-600)}.section{padding:64px 0}@media (min-width: 900px){.section{padding:96px 0}}.section+.section{border-top:1px solid var(--linen-200)}.hero{padding:56px 0 64px}@media (min-width: 900px){.hero{padding:88px 0 120px}}.hero-grid{display:grid;gap:40px;grid-template-columns:1fr;align-items:center}@media (min-width: 900px){.hero-grid{grid-template-columns:1.05fr 1fr;gap:64px}}.hero h1{font-family:var(--font-display);margin:18px 0 0;font-size:var(--t-display-1);line-height:1.02;letter-spacing:-.025em;color:var(--ink-900)}.hero h1 em{font-style:italic;color:var(--sage-600)}.hero .sub{margin-top:22px;max-width:32em;font-size:17px;line-height:1.55;color:var(--fg-secondary);text-wrap:pretty}.hero-ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.hero-trust{margin-top:28px;display:flex;align-items:center;gap:14px;font-size:13px;color:var(--fg-tertiary)}.hero-trust .avs{display:inline-flex}.hero-trust .av{width:28px;height:28px;border-radius:99px;background:var(--sage-400);color:#fff;display:grid;place-items:center;font:600 11px var(--font-sans);border:2px solid var(--bg-app)}.hero-trust .av+.av{margin-left:-10px}.hero-trust .av.rj{background:#586d54}.hero-trust .av.ak{background:#c9763f}.hero-trust .av.pm{background:#455641}.hero-trust .av.sm{background:#8aa17e}.hero-mock{position:relative;background:#fff;border:1px solid var(--border-subtle);border-radius:var(--r-2xl);padding:16px;box-shadow:var(--shadow-xl);transform:rotate(-.4deg)}.hero-mock:after{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;background:radial-gradient(ellipse at center,rgba(138,161,126,.18),transparent 70%);z-index:-1;border-radius:32px}.mock-bar{height:32px;padding:0 12px;display:flex;align-items:center;gap:10px;background:var(--linen-50);border-radius:var(--r-md);margin-bottom:12px}.mock-bar .dot{width:9px;height:9px;border-radius:99px;background:var(--linen-300)}.mock-bar .dot.r{background:#e9b785}.mock-bar .dot.g{background:var(--sage-400)}.mock-bar .title{margin-left:6px;font:500 12px var(--font-sans);color:var(--ink-700)}.mock-grid{display:grid;gap:8px;grid-template-columns:1fr 1fr}.mock-stat{padding:12px 14px;background:var(--linen-50);border-radius:var(--r-md);border:1px solid var(--border-subtle)}.mock-stat .l{font:500 10px var(--font-sans);text-transform:uppercase;letter-spacing:.12em;color:var(--fg-tertiary)}.mock-stat .v{font-family:var(--font-display);font-size:24px;letter-spacing:-.015em;margin-top:4px;color:var(--ink-900)}.mock-stat .v small{font-size:12px;color:var(--fg-tertiary);letter-spacing:0}.mock-tables{margin-top:12px;display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.mock-t{background:#fff;border:1px solid var(--border-subtle);border-radius:8px;padding:8px;min-height:56px;display:flex;flex-direction:column;justify-content:space-between}.mock-t .n{font-family:var(--font-display);font-size:14px;color:var(--ink-900)}.mock-t .p{width:28px;height:6px;border-radius:99px;background:var(--linen-200)}.mock-t .p.warn{background:var(--warning-bg)}.mock-t .p.ok{background:var(--success-bg)}.mock-t .p.brand{background:var(--sage-200)}.mock-t.vacant{background:var(--linen-50);border-style:dashed}.mock-t.vacant .n{color:var(--ink-300)}.trust{padding:36px 0;border-top:1px solid var(--linen-200);border-bottom:1px solid var(--linen-200);background:var(--linen-50)}.trust-row{display:flex;align-items:center;flex-wrap:wrap;gap:28px;font-family:var(--font-display);font-size:18px;color:var(--ink-700);justify-content:space-between}.trust-row .label{font-family:var(--font-sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-tertiary);flex-basis:100%}@media (min-width: 900px){.trust-row .label{flex-basis:auto}}.trust-row .n{font-style:italic;color:var(--sage-700);letter-spacing:-.01em}.sec-head{max-width:720px}.sec-head h2{font-family:var(--font-display);margin:8px 0 14px;font-size:var(--t-display-2);line-height:1.05;letter-spacing:-.022em;color:var(--ink-900)}.sec-head h2 em{font-style:italic;color:var(--sage-600)}.sec-head p{font-size:16px;line-height:1.55;color:var(--fg-secondary);max-width:52ch}.feat-grid{display:grid;gap:16px;margin-top:40px;grid-template-columns:1fr}@media (min-width: 720px){.feat-grid{grid-template-columns:1fr 1fr}}@media (min-width: 1100px){.feat-grid{grid-template-columns:repeat(3,1fr);gap:20px}}.feat{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;gap:12px;min-height:280px;transition:box-shadow .2s,border-color .2s}.feat:hover{box-shadow:var(--shadow-md);border-color:var(--sage-300)}.feat .ico{width:40px;height:40px;border-radius:10px;background:var(--sage-50);color:var(--sage-700);display:grid;place-items:center}.feat .ico svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}.feat h3{font-family:var(--font-display);margin:0;font-size:24px;letter-spacing:-.015em;color:var(--ink-900)}.feat p{margin:0;font-size:14.5px;line-height:1.55;color:var(--fg-secondary)}.feat .demo{margin-top:auto;padding:12px;background:var(--linen-50);border:1px solid var(--linen-200);border-radius:var(--r-md);font-family:var(--font-mono);font-size:11.5px;color:var(--fg-secondary);line-height:1.6}.feat .demo .h{color:var(--ink-900);font-weight:500}.showcase{background:var(--sage-800);color:#fff;padding:96px 0}.showcase .sec-head h2{color:#fff}.showcase .sec-head h2 em{color:var(--sage-200)}.showcase .sec-head p{color:#ffffffc7}.showcase .eb{color:var(--sage-200)}.showcase-mock{margin-top:56px;background:#fff;border-radius:var(--r-xl);padding:14px;box-shadow:0 30px 80px -20px #00000080;overflow-x:auto}.showcase-mock-inner{min-width:760px}.showcase-mock img{width:100%;display:block;border-radius:var(--r-lg)}.showcase-feat{display:grid;gap:16px;margin-top:56px;grid-template-columns:repeat(2,1fr)}@media (min-width: 760px){.showcase-feat{grid-template-columns:repeat(4,1fr)}}.showcase-feat .item .n{font-family:var(--font-display);font-size:48px;line-height:1;letter-spacing:-.025em;color:#fff}.showcase-feat .item .n em{font-style:italic;color:var(--sage-200);font-size:32px}.showcase-feat .item .l{font-size:13.5px;color:#ffffffc7;margin-top:8px;line-height:1.45}.testimonial-wrap{display:grid;gap:40px;align-items:center;grid-template-columns:1fr}@media (min-width: 900px){.testimonial-wrap{grid-template-columns:.9fr 1fr;gap:64px}}.testimonial-photo{width:100%;aspect-ratio:4 / 5;border-radius:var(--r-xl);overflow:hidden;background-color:var(--sage-200);background-image:url(/assets/images/restaurant-hero.jpg);background-size:cover;background-position:center;box-shadow:var(--shadow-lg)}.testimonial-quote{padding:8px 0}.testimonial-quote .q{font-family:var(--font-display);margin:16px 0 0;font-size:var(--t-h1);line-height:1.18;letter-spacing:-.018em;color:var(--ink-900)}.testimonial-quote .q em{font-style:italic;color:var(--sage-600)}.testimonial-quote .by{margin-top:28px;padding-top:20px;border-top:1px solid var(--linen-200);font-size:14px;color:var(--fg-tertiary);line-height:1.5}.testimonial-quote .by strong{color:var(--ink-900);font-weight:500;display:block;font-size:15.5px}.steps{display:grid;gap:28px;margin-top:48px;grid-template-columns:1fr}@media (min-width: 800px){.steps{grid-template-columns:repeat(3,1fr);gap:24px}}.step .n{font-family:var(--font-display);font-size:48px;line-height:1;letter-spacing:-.025em;color:var(--sage-400)}.step h3{font-family:var(--font-display);margin:14px 0 8px;font-size:24px;letter-spacing:-.015em;color:var(--ink-900)}.step p{margin:0;font-size:14.5px;line-height:1.55;color:var(--fg-secondary);max-width:32ch}.plans{display:grid;gap:16px;margin-top:48px;grid-template-columns:1fr}@media (min-width: 800px){.plans{grid-template-columns:repeat(3,1fr);gap:20px}}.plan{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--r-xl);padding:28px;display:flex;flex-direction:column;gap:14px;position:relative}.plan.featured{background:var(--sage-700);color:#fff;border-color:var(--sage-700)}.plan .name{font-family:var(--font-display);font-size:26px;color:var(--ink-900);letter-spacing:-.015em}.plan.featured .name{color:#fff}.plan .price{font-family:var(--font-display);font-size:48px;line-height:1;letter-spacing:-.025em;color:var(--ink-900)}.plan.featured .price{color:#fff}.plan .price small{font-family:var(--font-sans);font-size:13px;color:var(--fg-tertiary);font-weight:400;letter-spacing:0;margin-left:4px}.plan.featured .price small{color:var(--sage-200)}.plan .who{font-size:13.5px;color:var(--fg-tertiary)}.plan.featured .who{color:var(--sage-100)}.plan ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.plan li{font-size:14px;color:var(--fg-secondary);display:flex;align-items:flex-start;gap:10px}.plan.featured li{color:#ffffffdb}.plan li svg{width:16px;height:16px;flex-shrink:0;margin-top:2px;stroke:var(--sage-500);stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.plan.featured li svg{stroke:var(--sage-200)}.plan .badge{position:absolute;top:-10px;right:24px;background:var(--clay-500);color:#fff;font:500 11px var(--font-sans);letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:var(--r-pill)}.plan .btn{margin-top:auto}.faq{margin-top:40px;max-width:760px}.q{padding:22px 0;border-bottom:1px solid var(--linen-200)}.q .qh{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-family:var(--font-display);font-size:22px;letter-spacing:-.012em;color:var(--ink-900)}.q .qh:after{content:"+";font-family:var(--font-sans);font-weight:300;font-size:24px;color:var(--ink-300)}.q .a{margin-top:12px;font-size:14.5px;line-height:1.6;color:var(--fg-secondary);max-width:60ch}.cta-strip{padding:80px 0;background:var(--linen-100);border-top:1px solid var(--linen-200);border-bottom:1px solid var(--linen-200)}.cta-strip h2{font-family:var(--font-display);font-size:var(--t-display-2);line-height:1.05;letter-spacing:-.022em;color:var(--ink-900);margin:0;max-width:18ch}.cta-strip h2 em{font-style:italic;color:var(--sage-600)}.cta-strip .sub{margin-top:14px;font-size:15.5px;color:var(--fg-secondary);max-width:50ch}.cta-strip .ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.cta-strip .fineprint{margin-top:18px;font-size:12.5px;color:var(--fg-tertiary)}.cta-strip .fineprint .sep{margin:0 8px;opacity:.5}.footer{background:var(--ink-900);color:#ffffffc7;padding:56px 0 32px}.footer-grid{display:grid;gap:36px;grid-template-columns:1fr}@media (min-width: 800px){.footer-grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}.footer-brand .nav-brand{color:#fff}.footer-brand .nav-brand em{color:var(--sage-200)}.footer-brand .nav-brand .mark{background:#ffffff14}.footer-brand .nav-brand .mark img{mix-blend-mode:normal;filter:brightness(0) invert(1) opacity(.95)}.footer-brand p{font-size:13.5px;line-height:1.6;margin-top:16px;max-width:36ch}.footer h4{font:500 11px var(--font-sans);text-transform:uppercase;letter-spacing:.14em;color:#ffffff80;margin:0 0 14px}.footer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.footer a{font-size:14px;color:#ffffffd9;text-decoration:none}.footer a:hover{color:var(--sage-200)}.footer-base{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-size:12.5px;color:#ffffff80}.showcase-desktop{display:none}.showcase-mobile{display:block;margin-top:56px;background:#fff;border-radius:var(--r-xl);padding:14px;box-shadow:0 30px 80px -20px #00000080}@media (min-width: 900px){.showcase-desktop{display:block}.showcase-mobile{display:none}}.m-body{padding:14px 16px 24px;background:var(--bg-app);border-radius:var(--r-lg)}.m-title{font-family:var(--font-display);font-size:28px;letter-spacing:-.02em;line-height:1.1;color:var(--ink-900)}.m-title em{font-style:italic;color:var(--sage-600)}.m-sub{font-size:12.5px;color:var(--fg-tertiary);margin-top:2px}.m-strip{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.m-stat{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--r-lg);padding:10px 12px}.m-stat .lbl{font:500 9.5px var(--font-sans);text-transform:uppercase;letter-spacing:.12em;color:var(--fg-tertiary)}.m-stat .val{font-family:var(--font-display);font-size:20px;line-height:1;letter-spacing:-.015em;color:var(--ink-900);margin:6px 0 2px}.m-stat .sub{font-size:10px;color:var(--fg-tertiary)}.m-stat .sub .up{color:var(--success-fg)}.m-filters{display:flex;gap:6px;overflow-x:auto;margin:0 -16px 12px;padding:0 16px;scrollbar-width:none}.m-filters::-webkit-scrollbar{display:none}.m-chip{flex-shrink:0;height:28px;padding:0 12px;border-radius:var(--r-pill);background:#fff;border:1px solid var(--border-default);font:500 12px var(--font-sans);color:var(--ink-700);display:inline-flex;align-items:center;gap:5px;cursor:pointer}.m-chip.active{background:var(--sage-100);border-color:var(--sage-300);color:var(--sage-700)}.m-chip .ct{font-family:var(--font-mono);font-size:10px;opacity:.7}.m-tgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.m-tcard{background:#fff;border:1px solid var(--border-subtle);border-radius:var(--r-lg);padding:10px 12px;min-height:116px;display:flex;flex-direction:column;justify-content:space-between;gap:8px}.m-tcard.vacant{background:var(--linen-50);border-style:dashed;border-color:var(--linen-300)}.m-tcard .h{display:flex;justify-content:space-between;align-items:baseline}.m-tcard .num{font-family:var(--font-display);font-size:22px;line-height:1;letter-spacing:-.02em;color:var(--ink-900)}.m-tcard .seats{font:500 9.5px var(--font-mono);color:var(--fg-tertiary)}.m-tcard .tot{font-family:var(--font-display);font-size:16px;color:var(--ink-900);letter-spacing:-.01em}.m-tcard .row{display:flex;justify-content:space-between;align-items:center;margin:0}.m-tcard .row .mi{font:500 9.5px var(--font-mono);color:var(--fg-tertiary)}.m-tcard.vacant .empty{display:grid;place-items:center;gap:6px;padding:12px 0}.m-tcard.vacant .empty .plus{width:28px;height:28px;border-radius:99px;background:var(--sage-100);color:var(--sage-700);display:grid;place-items:center}.m-tcard.vacant .empty .l{font-size:11px;color:var(--fg-tertiary)}:root{--sage-50: #f1f4ee;--sage-100: #e1e9da;--sage-200: #c6d3bb;--sage-300: #a5b896;--sage-400: #8aa17e;--sage-500: #71896a;--sage-600: #586d54;--sage-700: #455641;--sage-800: #344230;--sage-900: #232c20;--linen-50: #fdfbf5;--linen-100: #f8f3e7;--linen-200: #efe8d3;--linen-300: #e0d5b8;--linen-400: #c6b994;--ink-900: #1d231b;--ink-700: #3a4338;--ink-500: #6b7368;--ink-300: #a3a89f;--ink-100: #d8dcd4;--clay-100: #f7e8d8;--clay-300: #e9b785;--clay-500: #c9763f;--clay-700: #8a4c25;--success-bg: #ecf3e6;--success-fg: #4d6c3f;--warning-bg: #fbf1d8;--warning-fg: #8a6612;--danger-bg: #f7dfdb;--danger-fg: #973a2c;--info-bg: #e3ebef;--info-fg: #34556a;--bg-app: var(--linen-50);--bg-surface: #ffffff;--bg-raised: var(--linen-100);--bg-sunken: var(--linen-200);--fg-primary: var(--ink-900);--fg-secondary: var(--ink-700);--fg-tertiary: var(--ink-500);--fg-on-brand: #ffffff;--brand: var(--sage-400);--brand-hover: var(--sage-500);--brand-press: var(--sage-600);--brand-soft: var(--sage-50);--border-subtle: var(--linen-200);--border-default:var(--linen-300);--border-strong: var(--ink-300);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--r-xs: 4px;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 20px;--r-2xl: 28px;--r-pill: 999px;--shadow-xs: 0 1px 2px rgba(29, 35, 27, .04);--shadow-sm: 0 1px 2px rgba(29, 35, 27, .06), 0 1px 1px rgba(29, 35, 27, .03);--shadow-md: 0 4px 12px -2px rgba(29, 35, 27, .06), 0 2px 4px -1px rgba(29, 35, 27, .04);--shadow-lg: 0 12px 28px -6px rgba(29, 35, 27, .1), 0 6px 12px -4px rgba(29, 35, 27, .05);--shadow-xl: 0 24px 56px -16px rgba(29, 35, 27, .18);--ring-brand: 0 0 0 3px rgba(138, 161, 126, .25);--ring-focus: 0 0 0 3px rgba(138, 161, 126, .45);--font-display: "Newsreader", "Iowan Old Style", Georgia, serif;--font-sans: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-mono: "Geist Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--t-display-1: clamp(44px, 8vw, 88px);--t-display-2: clamp(36px, 6vw, 64px);--t-h1: clamp(30px, 4vw, 44px);--t-h2: clamp(24px, 3vw, 32px);--t-h3: 20px;--t-h4: 17px;--t-body: 16px;--t-body-sm: 14px;--t-caption: 13px;--t-micro: 11px;--lh-tight: 1.05;--lh-snug: 1.2;--lh-base: 1.5;--lh-loose: 1.65;--ls-tight: -.02em;--ls-base: 0;--ls-eyebrow: .14em}.t-display-1,.t-display-2,.t-h1,.t-h2,.t-h3,.t-h4,.t-eyebrow,.t-body,.t-body-sm,.t-caption,.t-mono{margin:0;font-feature-settings:"ss01","ss02"}.t-display-1{font-family:var(--font-display);font-weight:400;font-size:var(--t-display-1);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);color:var(--fg-primary)}.t-display-1 em,.t-display-2 em,.t-h1 em,.t-h2 em{font-style:italic;color:var(--sage-600);font-weight:400}.t-display-2{font-family:var(--font-display);font-weight:400;font-size:var(--t-display-2);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);color:var(--fg-primary)}.t-h1{font-family:var(--font-display);font-weight:400;font-size:var(--t-h1);line-height:var(--lh-snug);letter-spacing:var(--ls-tight);color:var(--fg-primary)}.t-h2{font-family:var(--font-display);font-weight:400;font-size:var(--t-h2);line-height:var(--lh-snug);letter-spacing:var(--ls-tight);color:var(--fg-primary)}.t-h3{font-family:var(--font-sans);font-weight:600;font-size:var(--t-h3);line-height:var(--lh-snug);letter-spacing:-.01em;color:var(--fg-primary)}.t-h4{font-family:var(--font-sans);font-weight:600;font-size:var(--t-h4);line-height:var(--lh-snug);color:var(--fg-primary)}.t-eyebrow{font-family:var(--font-sans);font-weight:500;font-size:12px;line-height:1;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--sage-600)}.t-body{font-family:var(--font-sans);font-weight:400;font-size:var(--t-body);line-height:var(--lh-loose);color:var(--fg-secondary);text-wrap:pretty}.t-body-sm{font-family:var(--font-sans);font-weight:400;font-size:var(--t-body-sm);line-height:var(--lh-base);color:var(--fg-secondary)}.t-caption{font-family:var(--font-sans);font-weight:400;font-size:var(--t-caption);line-height:var(--lh-base);color:var(--fg-tertiary)}.t-mono{font-family:var(--font-mono);font-weight:400;font-size:var(--t-body-sm);letter-spacing:0;color:var(--fg-secondary)}.cl-root,body.cl-root{font-family:var(--font-sans);color:var(--fg-primary);background:var(--bg-app);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}html,body{margin:0;padding:0}body{font-family:var(--font-sans);color:var(--fg-primary);background:var(--bg-app);-webkit-font-smoothing:antialiased}.app{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:30;height:56px;padding:0 var(--space-4);display:flex;align-items:center;justify-content:space-between;background:#fdfbf5eb;-webkit-backdrop-filter:saturate(160%) blur(12px);backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--border-subtle)}@media (min-width: 900px){.topbar{height:64px;padding:0 var(--space-6)}}.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:22px;letter-spacing:-.015em;color:var(--ink-900)}.brand-mark{width:28px;height:28px;border-radius:7px;overflow:hidden;background:var(--linen-100);display:grid;place-items:center;flex-shrink:0}.brand-mark img{width:88%;height:88%;object-fit:contain;mix-blend-mode:multiply}.brand em{font-style:italic;color:var(--sage-600);font-weight:400}.topbar-right{display:flex;align-items:center;gap:8px}.iconbtn{width:38px;height:38px;border-radius:var(--r-md);background:transparent;border:0;display:grid;place-items:center;cursor:pointer;color:var(--ink-700);transition:background .15s}.iconbtn:hover{background:var(--sage-50)}.iconbtn svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}.avatar{width:32px;height:32px;border-radius:99px;background:var(--sage-400);color:#fff;display:grid;place-items:center;font:500 13px var(--font-sans)}.shell{flex:1;display:flex}.sidebar{display:none}@media (min-width: 900px){.sidebar{display:flex;flex-direction:column;width:240px;flex-shrink:0;background:var(--linen-50);border-right:1px solid var(--border-subtle);padding:var(--space-5) var(--space-3);position:sticky;top:64px;align-self:flex-start;height:calc(100vh - 64px)}}.side-group{display:flex;flex-direction:column;gap:2px}.side-eyebrow{font:500 11px var(--font-sans);text-transform:uppercase;letter-spacing:.14em;color:var(--fg-tertiary);padding:14px 12px 8px}.side-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--r-md);color:var(--ink-700);font:500 14px var(--font-sans);text-decoration:none;cursor:pointer;transition:background .15s,color .15s}.side-item svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.side-item:hover{background:var(--sage-50);color:var(--ink-900)}.side-item.active{background:var(--sage-100);color:var(--sage-700)}.side-item .count{margin-left:auto;font:500 11px var(--font-mono);color:var(--fg-tertiary)}.side-item.active .count{color:var(--sage-700)}.side-footer{margin-top:auto;padding:12px;display:flex;align-items:center;gap:10px;background:#fff;border-radius:var(--r-md);border:1px solid var(--border-subtle)}.side-footer .who{display:flex;flex-direction:column;gap:2px}.side-footer .who strong{font-size:13.5px;color:var(--ink-900);font-weight:600}.side-footer .who span{font-size:11.5px;color:var(--fg-tertiary)}.main{flex:1;padding:var(--space-4) var(--space-4) 92px;max-width:100%}@media (min-width: 900px){.main{padding:var(--space-6) var(--space-8) var(--space-12)}}.pg-head{margin-bottom:var(--space-5)}.crumbs{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--fg-tertiary);margin-bottom:6px}.crumbs a{color:inherit;text-decoration:none}.crumbs a:hover{color:var(--sage-600)}.crumbs .sep{opacity:.5}.pg-title{font-family:var(--font-display);font-size:var(--t-h1);letter-spacing:-.02em;line-height:1.1;color:var(--ink-900);margin:0}.pg-title em{font-style:italic;color:var(--sage-600)}.pg-sub{font-size:14px;color:var(--fg-tertiary);margin:4px 0 0}.pg-row{display:flex;align-items:end;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 18px;border-radius:var(--r-md);font:500 14px var(--font-sans);border:1px solid transparent;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s;text-decoration:none}.btn svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round}.btn-primary{background:var(--sage-400);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--sage-500);box-shadow:var(--shadow-md)}.btn-secondary{background:#fff;color:var(--ink-900);border-color:var(--border-default)}.btn-secondary:hover{background:var(--sage-50);border-color:var(--sage-300)}.btn-ghost{background:transparent;color:var(--sage-600)}.btn-ghost:hover{background:var(--sage-50)}.btn-sm{height:32px;padding:0 12px;font-size:12.5px;border-radius:var(--r-sm)}.pill{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 9px;border-radius:var(--r-pill);font:500 11.5px var(--font-sans)}.pill .dot{width:6px;height:6px;border-radius:99px;background:currentColor}.pill.success{background:var(--success-bg);color:var(--success-fg)}.pill.warn{background:var(--warning-bg);color:var(--warning-fg)}.pill.danger{background:var(--danger-bg);color:var(--danger-fg)}.pill.brand{background:var(--sage-100);color:var(--sage-700)}.pill.neutral{background:var(--linen-200);color:var(--ink-700)}.card{background:#fff;border-radius:var(--r-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm)}.card-pad{padding:var(--space-5)}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:40;height:64px;padding:6px 4px env(safe-area-inset-bottom,4px);display:flex;align-items:center;justify-content:space-around;background:#fdfbf5eb;-webkit-backdrop-filter:saturate(160%) blur(12px);backdrop-filter:saturate(160%) blur(12px);border-top:1px solid var(--border-subtle)}@media (min-width: 900px){.tabbar{display:none}}.tab{display:flex;flex-direction:column;align-items:center;gap:2px;flex:1;padding:6px 4px;cursor:pointer;color:var(--ink-500);text-decoration:none}.tab svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}.tab .lbl{font:500 10.5px var(--font-sans);letter-spacing:.01em}.tab.active{color:var(--sage-600)}.row{display:flex;align-items:center}.col{display:flex;flex-direction:column}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.mono{font-family:var(--font-mono)}.muted{color:var(--fg-tertiary)}.ant-message{font-family:var(--font-sans)!important}.ant-message-notice-content{padding:10px 16px!important;border-radius:var(--r-md)!important;box-shadow:var(--shadow-md)!important;font:500 13px var(--font-sans)!important;border:1px solid transparent!important;display:inline-flex!important;align-items:center!important;gap:8px!important}.ant-message-success>.ant-message-notice-content{background:var(--success-bg)!important;color:var(--success-fg)!important;border-color:#c3dbb8!important}.ant-message-success .anticon{color:var(--success-fg)!important}.ant-message-error>.ant-message-notice-content{background:var(--danger-bg)!important;color:var(--danger-fg)!important;border-color:#e8b8b3!important}.ant-message-error .anticon{color:var(--danger-fg)!important}.ant-message-warning>.ant-message-notice-content{background:var(--warning-bg)!important;color:var(--warning-fg)!important;border-color:#e8d5a3!important}.ant-message-warning .anticon{color:var(--warning-fg)!important}.ant-message-info>.ant-message-notice-content{background:var(--info-bg)!important;color:var(--info-fg)!important;border-color:#b3ccd8!important}.ant-message-info .anticon{color:var(--info-fg)!important}@tailwind base;@tailwind components;@tailwind utilities;*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--bg-app);color:var(--fg-primary)}button,input,textarea,select{font:inherit}a{color:var(--sage-600)}a:focus-visible,button:focus-visible,[role=button]:focus-visible,.ant-btn:focus-visible,.ant-input:focus,.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-focused,.ant-select-focused .ant-select-selector{outline:none;box-shadow:var(--ring-focus)!important}.ant-layout{background:var(--bg-app)!important}.ant-layout-header{background:var(--sage-900)!important}.ant-layout-sider,.ant-menu{background:var(--bg-surface)!important;color:var(--fg-primary)!important}.ant-menu-item{color:var(--fg-primary)!important}.ant-menu-item:hover,.ant-menu-item-selected{background:var(--sage-50)!important;color:var(--sage-700)!important}.ant-card,.ant-modal-content,.ant-drawer-content{background:var(--bg-surface)!important;border-color:var(--border-subtle)!important}.ant-table,.ant-table-container{background:var(--bg-surface)!important}.ant-table-thead>tr>th{background:var(--bg-raised)!important;border-color:var(--border-subtle)!important;color:var(--fg-primary)!important}.ant-table-tbody>tr>td{border-color:var(--border-subtle)!important;color:var(--fg-primary)!important}.ant-table-tbody>tr:hover>td{background:var(--linen-50)!important}.ant-input,.ant-input-password,.ant-input-affix-wrapper,.ant-select-selector{background:var(--bg-surface)!important;border-color:var(--border-default)!important;color:var(--fg-primary)!important}.ant-input::placeholder,.ant-input-password input::placeholder,.ant-input-affix-wrapper input::placeholder{color:var(--ink-300)!important;opacity:1!important}.ant-input:hover,.ant-input-password:hover,.ant-input-affix-wrapper:hover,.ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-color:var(--sage-400)!important}.ant-input:focus,.ant-input-password:focus,.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-focused,.ant-select-focused .ant-select-selector{border-color:var(--sage-500)!important}.ant-modal-header,.ant-drawer-header{background:var(--bg-surface)!important;border-color:var(--border-subtle)!important}.ant-modal-title,.ant-drawer-title,.ant-modal-body,.ant-drawer-body{color:var(--fg-primary)!important}.ant-menu-horizontal{background:transparent!important;border-bottom:none!important}.ant-menu-horizontal .ant-menu-item{background:transparent!important;color:var(--linen-200)!important;border-radius:var(--r-sm);transition:background-color .15s ease,color .15s ease}.ant-menu-horizontal .ant-menu-item:hover,.ant-menu-horizontal .ant-menu-item-selected{background:#ffffff1a!important;color:#fff!important}
