@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap";:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:left;box-sizing:border-box;border:0;flex-direction:column;width:100%;max-width:none;min-height:100svh;margin:0;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero-legacy{position:relative}.hero-legacy .base,.hero-legacy .framework,.hero-legacy .vite{margin:0 auto;inset-inline:0}.hero-legacy .base{z-index:0;width:170px;position:relative}.hero-legacy .framework,.hero-legacy .vite{position:absolute}.hero-legacy .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero-legacy .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#252923;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:0;background:#f5f6ef;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}button,input{font:inherit}a{color:inherit;text-decoration:none}.storefront{background:#f5f6ef;width:min(1440px,100%);margin:0 auto;overflow:hidden}.announcement{color:#e8eddd;background:#293f35;justify-content:center;align-items:center;gap:10px;min-height:34px;padding:6px 16px;font-size:10px;display:flex}.announcement span{color:#ed9b74}.site-header{border-bottom:1px solid #dfe3d9;justify-content:space-between;align-items:center;height:76px;padding:0 7.5%;display:flex}.wordmark{white-space:nowrap;align-items:center;gap:9px;font-size:18px;font-weight:700;display:inline-flex}.wordmark-light{color:#718176;font-weight:400}.brand-mark{color:#f5f6ef;background:#a94c32;border-radius:50%;place-items:center;width:29px;height:29px;font-family:Playfair Display,serif;font-size:13px;font-style:italic;display:grid}.main-nav,.header-actions{align-items:center;gap:35px;font-size:12px;display:flex}.main-nav a,.library-link{color:#6d766d;transition:color .2s}.main-nav a:hover,.library-link:hover{color:#293f35}.main-nav .nav-active{color:#293f35;font-weight:700}.header-actions{gap:22px}.sign-in{border:1px solid #bec7ba;border-radius:2px;padding:10px 16px;transition:background .2s,color .2s}.sign-in:hover{color:#fff;background:#293f35}.sign-in span{margin-left:7px}.hero{background:radial-gradient(at 86% 30%,#e3e8d8 0,#0000 34%),#eff1e8;grid-template-columns:1fr 1fr;min-height:486px;padding:60px 10.2% 48px;display:grid}.hero-copy{align-self:center;padding:0 0 15px 2%;animation:.65s both rise-in}.eyebrow{color:#667466;letter-spacing:1.1px;text-transform:uppercase;align-items:center;gap:8px;margin:0 0 20px;font-size:10px;font-weight:700;display:flex}.eyebrow-dot{background:#dc7957;border-radius:50%;width:7px;height:7px}.hero h1{color:#283a31;margin:0;font-family:Playfair Display,Georgia,serif;font-size:clamp(48px,5vw,71px);font-weight:500;line-height:1.04}.hero h1 em{color:#d36f4e;font-weight:500}.hero-description{color:#69736b;max-width:380px;margin:20px 0 25px;font-size:13px;line-height:1.8}.hero-cta{color:#fff;background:#30473a;align-items:center;gap:21px;padding:13px 17px;font-size:11px;font-weight:600;transition:background .2s,transform .2s;display:inline-flex}.hero-cta:hover{background:#d36f4e;transform:translateY(-2px)}.hero-cta span{font-size:16px}.hero-note{color:#7d857c;align-items:center;gap:10px;margin-top:24px;font-size:10px;display:flex}.note-stars{color:#d98256;letter-spacing:1px;font-size:11px}.hero-art{perspective:850px;justify-content:center;align-self:center;align-items:center;min-height:350px;animation:.8s .1s both reveal-art;display:flex;position:relative}.art-sun{opacity:.75;background:#e4b16d;border-radius:50%;width:255px;height:255px;position:absolute;transform:translate(22px,-7px)}.book{flex-direction:column;justify-content:space-between;font-family:Playfair Display,Georgia,serif;display:flex;position:absolute;box-shadow:12px 14px 30px #273b3229}.book-back{color:#f6edda;z-index:1;background:#a94c32;width:142px;height:220px;padding:18px 15px;transform:rotate(11deg)translate(82px,-5px)}.book-back span{font-size:19px;line-height:1.12}.book-mid{color:#eaf0df;z-index:2;background:#405f4a;width:158px;height:242px;padding:20px 16px;transform:rotate(-10deg)translate(-83px,1px)}.book-mid span{font-size:20px;line-height:1.1}.book-front{color:#283b32;z-index:3;background:#f2d79c;width:166px;height:254px;padding:23px 18px;transform:rotate(2deg)translateY(14px)}.book-front span{font-size:25px;line-height:.98}.book small{letter-spacing:1px;font-family:DM Sans,sans-serif;font-size:7px;font-weight:700}.art-caption{color:#758073;letter-spacing:.4px;text-transform:uppercase;justify-content:space-between;font-size:8px;display:flex;position:absolute;bottom:2px;left:1%;right:1%}.catalog-section{background:#fbfbf7;padding:65px 8.5% 75px}.catalog-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.catalog-heading .eyebrow{margin-bottom:8px}.catalog-heading h2{color:#293f35;margin:0;font-family:Playfair Display,Georgia,serif;font-size:38px;font-weight:500;line-height:1.15}.search-box{color:#626c62;background:#fff;border:1px solid #dce1d7;align-items:center;gap:9px;width:min(275px,40%);height:40px;padding:0 10px;display:flex}.search-box>span{font-size:23px;line-height:1}.search-box input{color:#293f35;background:0 0;border:0;outline:none;width:100%;min-width:0;font-size:10px}.search-box input::placeholder{color:#959c93}.search-box kbd{color:#98a096;border:1px solid #e3e5df;border-radius:2px;padding:1px 5px;font-size:9px}.catalog-toolbar{border-bottom:1px solid #e6e8e1;justify-content:space-between;align-items:center;gap:15px;margin:27px 0 21px;display:flex}.category-tabs{border:0;align-items:center;gap:25px;min-width:0;margin:0;padding:0;display:flex;overflow-x:auto}.category-tab{color:#879087;cursor:pointer;background:0 0;border:0;flex:none;padding:0 0 13px;font-size:10px;position:relative}.category-tab.selected{color:#2d4236;font-weight:700}.category-tab.selected:after{content:"";background:#a94c32;height:2px;position:absolute;bottom:-1px;left:0;right:0}.book-count{color:#959b92;flex:none;padding-bottom:13px;font-size:9px}.book-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:21px;display:grid}.book-card{min-width:0;animation:.5s both rise-in}.cover-wrap{aspect-ratio:.82;background:#e5e8df;position:relative;overflow:hidden}.cover-wrap img{object-fit:cover;width:100%;height:100%;transition:transform .45s;display:block}.book-card:hover .cover-wrap img{transform:scale(1.04)}.book-label{color:#304438;background:#f5f6efed;padding:5px 8px;font-size:8px;position:absolute;top:10px;left:10px}.save-book{color:#304438;cursor:pointer;background:#f5f6efed;border:0;border-radius:50%;width:27px;height:27px;font-size:17px;line-height:1;position:absolute;top:9px;right:9px}.save-book:hover{color:#fff;background:#a94c32}.book-meta{justify-content:space-between;align-items:start;gap:8px;padding-top:13px;display:flex}.book-category{color:#8a9489;letter-spacing:.6px;text-transform:uppercase;margin:0 0 5px;font-size:8px}.book-meta h3{color:#2b3b32;margin:0;font-family:Playfair Display,Georgia,serif;font-size:16px;font-weight:500;line-height:1.25}.book-author{color:#92988f;margin:5px 0 0;font-size:9px}.book-price{color:#33483b;white-space:nowrap;padding-top:17px;font-size:11px;font-weight:700}.empty-state{color:#737e72;text-align:center;grid-column:1/-1;padding:40px 0;font-size:13px}.about-strip{color:#edf0e4;background:#30473a;grid-template-columns:1fr 3fr 1fr;align-items:center;gap:26px;padding:34px 9%;display:grid}.about-index{color:#dca27c;letter-spacing:1px;text-transform:uppercase;font-size:9px}.about-strip p{max-width:600px;margin:0;font-family:Playfair Display,Georgia,serif;font-size:18px;line-height:1.5}.about-signature{color:#dca27c;white-space:nowrap;justify-self:end;font-family:Playfair Display,Georgia,serif;font-size:17px;font-style:italic}.about-signature span{margin-left:5px;font-family:sans-serif;font-style:normal}.site-footer{color:#606a60;background:#f5f6ef;justify-content:space-between;align-items:center;gap:15px;min-height:76px;padding:14px 8.5%;font-size:9px;display:flex}.footer-wordmark{color:#2d4236;font-size:14px}.footer-wordmark .brand-mark{width:24px;height:24px;font-size:11px}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes reveal-art{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@media (width<=800px){.site-header{padding:0 5%}.main-nav{gap:17px}.main-nav a:nth-child(2){display:none}.header-actions{gap:12px}.hero{grid-template-columns:1fr 1fr;min-height:auto;padding:54px 6% 38px}.hero-art{min-height:300px;transform:scale(.86)}.catalog-section{padding:50px 6%}.book-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:27px}.about-strip{grid-template-columns:1fr 3fr}.about-signature{grid-column:2}}@media (width<=560px){.announcement{font-size:9px}.site-header{height:65px;padding:0 18px}.wordmark{gap:7px;font-size:15px}.brand-mark{width:25px;height:25px}.main-nav{display:none}.header-actions{gap:12px;font-size:10px}.library-link{display:none}.sign-in{padding:8px 10px}.hero{grid-template-columns:1fr;padding:43px 24px 22px}.hero-copy{padding:0}.hero h1{font-size:56px}.hero-description{max-width:330px}.hero-art{min-height:300px;margin:10px 0 -9px;transform:scale(.86)}.art-caption{left:4%;right:4%}.catalog-section{padding:43px 20px 53px}.catalog-heading{flex-direction:column;align-items:start}.catalog-heading h2{font-size:34px}.search-box{width:100%}.catalog-toolbar{flex-direction:column;align-items:start;gap:12px;margin-top:23px}.category-tabs{gap:19px;width:100%}.book-count{padding:0 0 11px}.book-grid{gap:23px 13px}.book-meta h3{font-size:14px}.book-price{font-size:10px}.about-strip{grid-template-columns:1fr;gap:12px;padding:26px 23px}.about-strip p{font-size:17px}.about-signature{grid-column:auto;justify-self:start}.site-footer{flex-direction:column;align-items:start;padding:22px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.header-link{color:#6d766d;cursor:pointer;background:0 0;border:0;padding:6px 0;font-size:12px}.header-link:hover{color:#293f35}.sign-in[type=button]{color:inherit;cursor:pointer;font:inherit;background:0 0}.store-notice{z-index:10;color:#f5f6ef;background:#405f4a;justify-content:space-between;gap:14px;padding:12px 8.5%;font-size:12px;display:flex;position:sticky;top:0}.store-notice button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:18px}.buy-book{color:#304438;cursor:pointer;background:0 0;border:1px solid #d7ddd2;justify-content:space-between;width:100%;margin-top:13px;padding:9px 11px;font-size:10px;font-weight:600;transition:color .2s,background .2s;display:flex}.buy-book:hover{color:#fff;background:#30473a;border-color:#30473a}.account-panel{background:#fbfbf7;min-height:60vh;padding:54px 8.5% 75px}.panel-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:29px;display:flex}.panel-heading .eyebrow{margin-bottom:8px}.panel-heading h2{color:#293f35;margin:0;font-family:Playfair Display,Georgia,serif;font-size:38px;font-weight:500}.text-button{color:#3c5946;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;font-size:11px;text-decoration:underline}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.library-book{background:#fff;border:1px solid #e3e7df;grid-template-columns:110px 1fr;gap:17px;padding:15px;display:grid}.library-book>img{aspect-ratio:.8;object-fit:cover;width:110px}.library-book h3{color:#2b3b32;margin:3px 0;font-family:Playfair Display,Georgia,serif;font-size:19px;font-weight:500}.library-book .hero-cta{margin-top:13px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:28px;display:grid}.stats-grid>div{background:#fff;border:1px solid #e3e7df;flex-direction:column;gap:9px;padding:16px;display:flex}.stats-grid span{color:#7f897d;font-size:10px}.stats-grid strong{color:#30473a;font-family:Playfair Display,Georgia,serif;font-size:25px;font-weight:500}.admin-columns{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:22px;margin-top:22px;display:grid}.admin-section{background:#fff;border:1px solid #e3e7df;min-width:0;padding:18px}.section-title{justify-content:space-between;align-items:center;gap:10px;margin-bottom:17px;display:flex}.section-title h3{color:#304438;margin:0;font-family:Playfair Display,Georgia,serif;font-size:19px;font-weight:500}.section-title>span{color:#8a9489;font-size:9px}.book-form,.auth-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.book-form label,.auth-form label{color:#667466;flex-direction:column;gap:6px;font-size:10px;display:flex}.book-form input,.book-form textarea,.auth-form input{color:#293f35;background:#fff;border:1px solid #dce1d7;border-radius:0;width:100%;min-width:0;padding:9px;font-size:11px}.book-form textarea{resize:vertical}.full-field{grid-column:1/-1}.check-field{align-items:center;flex-direction:row!important}.check-field input{width:auto}.book-form .hero-cta{cursor:pointer;border:0;justify-self:end}.table-wrap{width:100%;overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:10px}th,td{white-space:nowrap;border-bottom:1px solid #edf0e9;padding:10px 8px}th{color:#879087;text-transform:uppercase;font-size:8px;font-weight:600}td{color:#536254}.table-action{color:#405f4a;cursor:pointer;background:#fff;border:1px solid #dce1d7;padding:5px 7px;font-size:9px}.lower-tables{grid-template-columns:1fr 1fr}.modal-backdrop{z-index:30;background:#18231db8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.auth-modal{width:min(440px,100%);max-width:none;color:inherit;background:#fbfbf7;border:0;margin:0;padding:35px;animation:.24s both rise-in;position:relative;inset:auto;box-shadow:0 20px 70px #1115}.auth-modal .eyebrow{margin-bottom:8px}.auth-modal h2{color:#293f35;margin:0 0 23px;font-family:Playfair Display,Georgia,serif;font-size:32px;font-weight:500}.auth-form{grid-template-columns:1fr;gap:14px}.auth-form .hero-cta{cursor:pointer;border:0;justify-content:space-between;margin-top:5px}.auth-switch{margin-top:19px}.modal-close{color:#667466;cursor:pointer;background:0 0;border:0;font-size:24px;position:absolute;top:12px;right:14px}.notice-error{color:#a94738;margin:10px 0;font-size:11px}@media (width<=800px){.account-panel{padding:45px 6%}.admin-columns,.lower-tables{grid-template-columns:1fr}}@media (width<=560px){.header-link{font-size:10px}.store-notice{padding:11px 20px}.account-panel{padding:36px 20px 50px}.panel-heading h2{font-size:32px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-grid{grid-template-columns:1fr}.library-book{grid-template-columns:85px 1fr;gap:12px;padding:11px}.library-book>img{width:85px}.book-form{grid-template-columns:1fr}.full-field{grid-column:auto}.auth-modal{padding:30px 23px}}
