*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:#efede4}#root{min-height:100vh}.landing{--paper:#efede4;--panel:#fffefb;--ink:#1d2b29;--ink-soft:#4d5b57;--line:#d8d3c0;--line-strong:#b9b29a;--accent:#2f6f5e;--accent-dark:#234f42;--accent-soft:#e2ebe6;--gold:#b8863b;--gold-soft:#f3e7cf;--font-display:"Source Serif 4", Georgia, "Times New Roman", serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, Menlo, monospace;background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.55}.landing *{box-sizing:border-box}.landing h1,.landing h2,.landing h3{font-family:var(--font-display);color:var(--ink);letter-spacing:-.01em;margin:0;font-weight:600}.landing h1{max-width:14ch;font-size:3rem;line-height:1.12}.landing h2{margin-bottom:14px;font-size:1.9rem}.landing h3{margin-bottom:6px;font-size:1.15rem}.landing p{color:var(--ink-soft);max-width:62ch;margin:0}.landing a{color:inherit;text-decoration:none}.landing-nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding:22px 48px;display:flex}.landing-brand{font-family:var(--font-display);align-items:center;gap:9px;font-size:1.2rem;font-weight:700;display:flex}.brand-mark{background:var(--accent);width:26px;height:26px;color:var(--panel);font-family:var(--font-mono);border-radius:5px;justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:inline-flex}.landing-nav-links{flex:1;justify-content:center;align-items:center;gap:28px;font-size:.92rem;font-weight:500;display:flex}.landing-nav-links a:hover{color:var(--accent-dark)}.btn-primary,.btn-secondary{white-space:nowrap;border-radius:6px;align-items:center;padding:10px 20px;font-size:.92rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--accent);color:#fff;border:1px solid var(--accent);transition:background .15s}.btn-primary:hover{background:var(--accent-dark)}.btn-secondary{color:var(--ink);border:1px solid var(--line-strong);background:0 0;transition:border-color .15s}.btn-secondary:hover{border-color:var(--ink-soft)}.hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:56px;max-width:1180px;margin:0 auto;padding:76px 48px 96px;display:grid}.hero-sub{max-width:46ch;margin-top:18px;font-size:1.05rem}.hero-actions{gap:12px;margin-top:30px;display:flex}.demo-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:22px;box-shadow:0 1px 2px #1d2b290f}.demo-panel-head{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.demo-class-name{font-family:var(--font-display);font-size:1.05rem;font-weight:600}.invite-chip{font-family:var(--font-mono);letter-spacing:.1em;background:var(--gold-soft);color:var(--gold);border:1px solid var(--gold);border-radius:5px;padding:4px 10px;font-size:.82rem;font-weight:600}.demo-mode-row{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.demo-mode-label{color:var(--ink-soft);font-size:.82rem;font-weight:600}.demo-mode-buttons{gap:6px;display:flex}.demo-mode-buttons button{border:1px solid var(--line-strong);background:var(--panel);color:var(--ink-soft);cursor:pointer;border-radius:999px;padding:6px 12px;font-family:inherit;font-size:.78rem;font-weight:600;transition:border-color .15s,color .15s,background .15s}.demo-mode-buttons button.active{border-color:var(--accent);color:var(--accent-dark);background:var(--accent-soft)}.demo-groups{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.demo-group{background:var(--paper);border:1px solid var(--line);border-radius:6px;min-height:132px;padding:10px}.demo-group-head{color:var(--ink-soft);margin-bottom:8px;font-size:.72rem;font-weight:600}.demo-name{background:var(--panel);border-radius:4px;margin-bottom:6px;padding:6px 8px;font-size:.78rem;animation:.4s both riseIn}@keyframes riseIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.demo-name{animation:none}}.demo-visibility-row{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:16px;padding-top:14px;display:flex}.mini-visibility-pill{font-family:var(--font-mono);border-radius:999px;padding:3px 9px;font-size:.7rem}.mini-visibility-pill.hidden{color:var(--ink-soft);background:#eee}.mini-visibility-pill.visible{background:var(--accent-soft);color:var(--accent-dark)}.demo-visibility-hint{color:var(--ink-soft);font-size:.78rem}.section{max-width:1180px;margin:0 auto;padding:64px 48px}.section.ruled{border-top:1px solid var(--line)}.steps{grid-template-columns:1fr 1fr;gap:36px 48px;margin-top:8px;display:grid}.step-row{gap:18px;display:flex}.step-number{border:1px solid var(--line-strong);width:34px;height:34px;font-family:var(--font-mono);color:var(--accent-dark);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:600;display:flex}.step-row h3{margin-bottom:4px}.step-row p{font-size:.94rem}.methods-grid{border:1px solid var(--line);border-radius:8px;grid-template-columns:1fr 1fr;gap:0;margin-top:8px;display:grid;overflow:hidden}.method-col{padding:28px}.method-col:first-child{border-right:1px solid var(--line);background:var(--panel)}.method-col p{margin-top:8px;font-size:.94rem}.control-section{grid-template-columns:1.1fr 1fr;align-items:center;gap:56px;display:grid}.control-copy p{margin-top:12px;font-size:.98rem}.control-mock{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:18px 20px}.control-mock-head{font-family:var(--font-display);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:14px;font-size:1rem;font-weight:600;display:flex}.control-mock-actions{gap:8px;display:flex}.mock-btn{border:1px solid var(--line-strong);color:var(--ink);border-radius:6px;padding:6px 12px;font-size:.78rem;font-weight:600}.pricing-sub{margin-top:-6px;margin-bottom:32px;font-size:1rem}.pricing-row{flex-wrap:wrap;align-items:center;gap:44px;display:flex}.pricing-figure{border:1px solid var(--gold);background:var(--gold-soft);border-radius:8px;flex-direction:column;flex-shrink:0;align-items:flex-start;gap:4px;padding:22px 30px;display:flex}.price-amount{font-family:var(--font-mono);color:var(--gold);font-size:2.6rem;font-weight:600;line-height:1}.price-unit{color:var(--ink-soft);font-size:.85rem;font-weight:500}.pricing-list{flex-direction:column;flex:1;gap:10px;min-width:240px;margin:0;padding:0;list-style:none;display:flex}.pricing-list li{border-bottom:1px solid var(--line);color:var(--ink);padding:10px 0 10px 20px;font-size:.95rem;position:relative}.pricing-list li:last-child{border-bottom:none}.pricing-list li:before{content:"";background:var(--ink-soft);width:8px;height:1px;position:absolute;top:18px;left:0}.pricing-example{margin-top:26px;font-size:.92rem}.cta-band{background:var(--gold-soft);border:1px solid var(--gold);border-radius:10px;align-items:center;gap:32px;max-width:1180px;margin:0 auto 80px;padding:48px;display:flex}.cta-code{font-family:var(--font-mono);letter-spacing:.1em;color:var(--gold);flex-shrink:0;font-size:2.2rem;font-weight:600}.cta-band h2{margin-bottom:4px;font-size:1.4rem}.cta-band>div{flex:1}.cta-band .btn-primary{flex-shrink:0}.landing-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:28px 48px;display:flex}.footer-copy{color:var(--ink-soft);font-size:.85rem}@media (width<=900px){.hero{grid-template-columns:1fr;padding:48px 24px 64px}.landing h1{max-width:none;font-size:2.3rem}.landing-nav{padding:18px 24px}.landing-nav-links{display:none}.section{padding:48px 24px}.steps,.methods-grid{grid-template-columns:1fr}.method-col:first-child{border-right:none;border-bottom:1px solid var(--line)}.control-section{grid-template-columns:1fr}.pricing-row{flex-direction:column;align-items:stretch;gap:24px}.pricing-figure{text-align:center;align-items:center}.cta-band{flex-direction:column;align-items:flex-start;padding:32px 24px}.landing-footer{padding:24px}}
