:root{--font-body:"Inter";--font-display:"Newsreader";--font-mono:"IBM Plex Mono";--paper:#ffffff;--page-bg:#f4f6f9;--ink:#18222f;--ink-soft:#4a5666;--muted:#7c8794;--pen-blue:#2456d6;--pen-blue-soft:#e8eefc;--margin-red:#e0563f;--hairline:#e3e8ef;--rule-line:#e9eef5;--panel:#f7f9fb;--shadow:0 1px 2px rgba(24,34,47,0.05),0 8px 28px rgba(24,34,47,0.07);--radius:12px}[data-theme=dark]{--paper:#161b22;--page-bg:#0e1217;--ink:#e6ebf1;--ink-soft:#aeb8c4;--muted:#76828f;--pen-blue:#6f97f5;--pen-blue-soft:#1c2a47;--margin-red:#e2745f;--hairline:#29323d;--rule-line:#1f2630;--panel:#12171e;--shadow:0 1px 2px rgba(0,0,0,0.4),0 10px 30px rgba(0,0,0,0.35)}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition:none!important;animation:none!important}}body{margin:0;background:var(--page-bg);color:var(--ink);font-family:var(--font-body),system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}.container{width:min(1400px,calc(100% - 2rem));margin-inline:auto}a{color:var(--pen-blue)}button{font-family:inherit}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip-link{position:absolute;left:-999px;top:0;background:var(--pen-blue);color:#fff;padding:.6rem 1rem;border-radius:0 0 8px 0;z-index:100}.skip-link:focus{left:0}:focus-visible{outline:2px solid var(--pen-blue);outline-offset:2px}.site-header{border-bottom:1px solid var(--hairline);background:var(--paper)}.header-inner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.8rem}.wordmark{align-items:center;gap:.55rem;text-decoration:none}.wordmark,.wordmark-mark{display:inline-flex;color:var(--ink)}.wordmark-text{font-family:var(--font-display),Georgia,serif;font-size:1.25rem;font-weight:600;letter-spacing:.01em;color:var(--ink)}.wordmark-text em{font-style:italic;color:var(--ink)}.header-nav{display:flex;gap:1.4rem}.header-nav a{color:var(--ink-soft);text-decoration:none;font-size:.92rem}.header-nav a:hover{color:var(--pen-blue)}.mobile-menu-toggle{display:none;background:none;border:none;color:var(--ink);font-size:1.5rem;cursor:pointer;padding:.5rem;z-index:100}.mobile-menu-toggle:hover{color:var(--pen-blue)}.mobile-nav{display:none;position:absolute;top:100%;right:0;background:var(--paper);border:1px solid var(--hairline);border-radius:0 0 8px 8px;box-shadow:var(--shadow);z-index:99;flex-direction:column}.mobile-nav.is-open{display:flex}.mobile-nav a{display:block;padding:.8rem 1.5rem;color:var(--ink-soft);text-decoration:none;border-bottom:1px solid var(--hairline);transition:background .2s,color .2s}.mobile-nav a:last-child{border-bottom:none}.mobile-nav a:hover{background:var(--pen-blue-soft);color:var(--pen-blue)}@media (max-width:768px){.header-nav{display:none}.mobile-menu-toggle{display:block}}.workbench{margin-top:1.1rem;margin-bottom:2.6rem;background:var(--page-bg);padding:1.2rem;border-radius:var(--radius)}.menubar{display:flex;align-items:center;flex-wrap:wrap;gap:.1rem;padding:.25rem .5rem;background:var(--paper);border:1px solid var(--hairline);border-bottom:none;border-radius:8px 8px 0 0}.menu-root{position:relative}.menubar-btn{display:inline-flex;align-items:center;gap:.3rem;padding:.38rem .65rem;border:none;border-radius:7px;background:transparent;color:var(--ink);font-size:.88rem;font-weight:600;cursor:pointer}.menubar-btn.is-open,.menubar-btn:hover{background:var(--pen-blue-soft);color:var(--pen-blue)}.menubar-right{margin-left:auto;display:inline-flex;align-items:center;gap:.8rem}.status-save{font-family:var(--font-mono),monospace;font-size:.72rem;color:var(--pen-blue);white-space:nowrap}.menu-pop{position:absolute;top:calc(100% + 4px);left:0;z-index:60;min-width:215px;background:var(--paper);border:1px solid var(--hairline);border-radius:10px;box-shadow:var(--shadow);padding:.3rem;display:flex;flex-direction:column}.menu-pop button{display:flex;align-items:center;justify-content:space-between;gap:1.4rem;width:100%;padding:.45rem .65rem;border:none;border-radius:7px;background:transparent;color:var(--ink);font-size:.87rem;text-align:left;cursor:pointer}.menu-pop button:hover{background:var(--pen-blue-soft);color:var(--pen-blue)}.menu-pop hr{border:none;border-top:1px solid var(--hairline);margin:.25rem .4rem}.menu-pop kbd{font-family:var(--font-mono),monospace;font-size:.66rem;color:var(--muted);background:var(--panel);border:1px solid var(--hairline);border-radius:4px;padding:.05rem .3rem}.emoji-pop{flex-direction:row;flex-wrap:wrap;width:248px;left:auto;right:0}.emoji-pop button{width:auto;font-size:1.05rem;padding:.3rem .4rem;justify-content:center}.toolbar{display:flex;flex-wrap:wrap;gap:.15rem 0;padding:.4rem .5rem;background:var(--paper);border-top:1px solid var(--hairline);border:1px solid var(--hairline);border-bottom:none}.tgroup,.toolbar{align-items:center}.tgroup{display:inline-flex;gap:.1rem;padding:0 .45rem;border-right:1px solid var(--hairline)}.tgroup:last-child{border-right:none}.tbtn{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;min-width:30px;height:30px;padding:0 .4rem;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--ink-soft);font-size:.85rem;font-weight:500;cursor:pointer;transition:background .12s,color .12s}.tbtn.is-active,.tbtn:hover{background:var(--pen-blue-soft);color:var(--pen-blue)}.tbtn.is-active{border-color:var(--pen-blue)}.tbtn.is-rec{color:var(--margin-red);border-color:var(--margin-red);background:transparent;animation:rec-pulse 1.2s infinite}@keyframes rec-pulse{50%{opacity:.55}}.tselect{height:30px;padding:0 .4rem;border:1px solid var(--hairline);border-radius:7px;background:var(--paper);color:var(--ink-soft);font-size:.84rem;font-family:inherit;cursor:pointer;max-width:120px}.tselect-font{max-width:105px}.size-control{display:inline-flex;align-items:center;gap:.05rem}.size-value{font-family:var(--font-mono),monospace;font-size:.8rem;color:var(--ink);min-width:1.6rem;text-align:center}.color-btn{position:relative;overflow:hidden}.color-btn input[type=color]{position:absolute;inset:0;opacity:0;cursor:pointer;border:none}.color-glyph{font-weight:700;font-size:.9rem;border-bottom:3px solid;line-height:1;padding-bottom:1px}.findbar{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;padding:.5rem .75rem;background:var(--panel);border:1px solid var(--hairline);border-bottom:none}.findbar input{flex:1 1;min-width:130px;height:30px;padding:0 .6rem;border:1px solid var(--hairline);border-radius:7px;background:var(--paper);color:var(--ink);font-size:.85rem;font-family:inherit}.findbar .tbtn{border:1px solid var(--hairline);background:var(--paper)}.findbar .tbtn:hover{border-color:var(--pen-blue)}.findbar-close{margin-left:auto}.workbench-body{display:grid;grid-template-columns:1fr;border:1px solid var(--hairline);border-radius:8px;background:var(--paper);box-shadow:var(--shadow);overflow:hidden}.notes-panel{display:none;border-right:1px solid var(--hairline);background:var(--panel);flex-direction:column;min-height:0;position:absolute;top:0;left:0;width:240px;height:100%;z-index:40;box-shadow:var(--shadow)}.notes-panel.is-open{display:flex}.notes-search{display:flex;gap:.4rem;padding:.6rem;border-bottom:1px solid var(--hairline)}.notes-search input{flex:1 1;min-width:0;padding:.42rem .6rem;border:1px solid var(--hairline);border-radius:8px;background:var(--paper);color:var(--ink);font-size:.86rem;font-family:inherit}.notes-search input::placeholder{color:var(--muted)}.notes-search .tbtn{border:1px solid var(--hairline);background:var(--paper);font-size:1rem}.notes-list{list-style:none;margin:0;padding:.4rem;overflow-y:auto;flex:1 1}.notes-empty{padding:.8rem .6rem;color:var(--muted);font-size:.85rem}.note-item{display:flex;align-items:stretch;border-radius:8px;overflow:hidden}.note-item.is-active{background:var(--pen-blue-soft)}.note-item.is-active .note-title{color:var(--pen-blue)}.note-open{flex:1 1;display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.5rem .6rem;border:none;background:transparent;text-align:left;cursor:pointer;min-width:0}.note-item:not(.is-active):hover{background:var(--paper)}.note-title{font-size:.87rem;font-weight:500;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.note-meta{font-family:var(--font-mono),monospace;font-size:.68rem;color:var(--muted)}.note-delete{border:none;background:transparent;color:var(--muted);padding:0 .55rem;cursor:pointer;opacity:0;transition:opacity .12s,color .12s}.note-delete:focus-visible,.note-item:hover .note-delete{opacity:1}.note-delete:hover{color:var(--margin-red)}.sheet-wrap{display:flex;flex-direction:column;min-width:0}.sheet{position:relative;flex:1 1;background:var(--paper)}.sheet:before{display:none}.sheet-input{display:block;width:100%;height:auto;min-height:80vh;max-height:none;padding:2rem 3rem;border:none;background:transparent;color:var(--ink);caret-color:var(--pen-blue);font-size:16px;line-height:1.65;overflow:hidden;word-break:break-word;resize:none}.sheet-input:focus{outline:none}.rich-editor:empty:before{content:attr(data-placeholder);color:var(--muted);pointer-events:none;display:block}.print-sheet h1,.rich-editor h1{font-size:1.9em;line-height:1.2;margin:.6em 0 .35em;font-weight:700}.print-sheet h2,.rich-editor h2{font-size:1.5em;line-height:1.25;margin:.6em 0 .35em;font-weight:650}.print-sheet h3,.rich-editor h3{font-size:1.22em;margin:.6em 0 .3em;font-weight:600}.print-sheet p,.rich-editor p{margin:0 0 .35em}.print-sheet blockquote,.rich-editor blockquote{margin:.5em 0;padding:.3em 1em;border-left:3px solid var(--pen-blue);background:var(--panel);color:var(--ink-soft)}.print-sheet pre,.rich-editor pre{font-family:var(--font-mono),ui-monospace,monospace;font-size:.9em;background:var(--panel);border:1px solid var(--hairline);border-radius:8px;padding:.7em .9em;margin:.5em 0;white-space:pre-wrap}.rich-editor a{color:var(--pen-blue)}.rich-editor img{max-width:100%;height:auto;border-radius:6px}.rich-editor hr{border:none;border-top:1px solid var(--hairline);margin:.9em 0}.rich-editor ol,.rich-editor ul{margin:.3em 0 .5em;padding-left:1.6em}.print-sheet ul.checklist,.rich-editor ul.checklist{list-style:none;padding-left:.3em}.print-sheet ul.checklist li,.rich-editor ul.checklist li{display:flex;align-items:baseline;gap:.45em}.rich-editor ul.checklist input[type=checkbox]{width:15px;height:15px;accent-color:var(--pen-blue);cursor:pointer;flex:none;transform:translateY(2px)}.rich-editor ul.checklist li:has(input:checked){color:var(--muted);text-decoration:line-through}.print-sheet table.np-table,.rich-editor table.np-table{border-collapse:collapse;margin:.6em 0;width:100%}.print-sheet table.np-table td,.rich-editor table.np-table td{border:1px solid var(--hairline);padding:.35em .6em;min-width:3em}.statusbar{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;padding:.5rem 1rem;border-top:1px solid var(--hairline);background:var(--panel);font-family:var(--font-mono),monospace;font-size:.72rem;color:var(--muted)}.statusbar-hint{margin-left:auto}html.focus-mode .content-section,html.focus-mode .hero,html.focus-mode .notes-panel,html.focus-mode .site-footer,html.focus-mode .site-header{display:none}html.focus-mode .workbench{width:min(1000px,calc(100% - 1.6rem));margin:0 auto;padding:1.2rem;background:var(--page-bg);border-radius:var(--radius)}html.focus-mode .workbench-body{grid-template-columns:1fr;border-radius:8px}html.focus-mode .sheet-input{min-height:85vh}.btn{display:inline-flex;align-items:center;gap:.38rem;padding:.45rem .8rem;border:1px solid var(--hairline);border-radius:8px;background:var(--paper);color:var(--ink-soft);font-size:.85rem;font-weight:500;cursor:pointer}.btn:hover{border-color:var(--pen-blue);color:var(--pen-blue)}.exit-focus{position:fixed;bottom:1.2rem;right:1.2rem;z-index:50;box-shadow:var(--shadow)}.hero{text-align:center;padding-block:.6rem 2rem}.hero h1{font-family:var(--font-display),Georgia,serif;font-weight:500;font-size:clamp(1.9rem,4.2vw,2.8rem);line-height:1.15;margin:0 0 .6rem;letter-spacing:-.01em}.content-section h2 em,.hero h1 em{font-style:italic;color:var(--pen-blue)}.hero-sub{margin:0 auto;max-width:36rem;color:var(--ink-soft);font-size:1.03rem}.content-section{padding-block:2.4rem;border-top:1px solid var(--hairline)}.content-section h2{font-family:var(--font-display),Georgia,serif;font-weight:500;font-size:clamp(1.5rem,3vw,2rem);margin:0 0 1.4rem}.content-section h2 a{text-decoration:none}#faq~.content-section h2,#how-it-works~.content-section h2{text-align:center;margin-left:auto;margin-right:auto;max-width:50rem}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1rem;gap:1rem}.feature-card{background:var(--paper);border:1px solid var(--hairline);border-radius:var(--radius);padding:1.15rem 1.25rem}.feature-card h3{margin:0 0 .4rem;font-size:1rem;font-weight:600}.feature-card p{margin:0;color:var(--ink-soft);font-size:.92rem}.prose{max-width:50rem;color:var(--ink-soft);margin-left:auto;margin-right:auto;text-align:center}.prose p{margin:0 0 1rem}.prose h2{text-align:center}.prose ul{margin-left:0;display:inline-block;text-align:left}.contact-form{max-width:50rem;margin-left:auto;margin-right:auto}.form-group{margin-bottom:1.5rem;display:flex;flex-direction:column}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--ink);font-size:.95rem}.form-group input,.form-group textarea{padding:.75rem 1rem;border:1px solid var(--hairline);border-radius:8px;background:var(--paper);color:var(--ink);font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--muted)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--pen-blue);box-shadow:0 0 0 3px var(--pen-blue-soft)}.form-group textarea{min-height:150px;resize:vertical}.form-submit{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.8rem;border:1px solid var(--pen-blue);border-radius:8px;background:var(--pen-blue);color:white;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s,transform .1s}.form-submit:hover{background:var(--pen-blue);opacity:.9}.form-submit:active{transform:scale(.98)}.form-success{background:var(--pen-blue-soft);border:1px solid var(--pen-blue);color:var(--pen-blue);padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-weight:500}#faq,#faq h2,#how-it-works,#how-it-works h2,.comparison-section{text-align:center}.comparison-table{width:100%;border-collapse:collapse;max-width:900px;margin:2rem auto;box-shadow:var(--shadow);border-radius:10px;overflow:hidden}.comparison-table td,.comparison-table th{padding:1.2rem;border:1px solid var(--hairline);text-align:left;font-size:.95rem}.comparison-table th{background:var(--pen-blue);color:white;font-weight:600}.comparison-table tbody tr:nth-child(2n){background:var(--panel)}.comparison-table tbody tr:hover{background:var(--pen-blue-soft)}.comparison-table .feature-name{font-weight:500;color:var(--ink)}.comparison-table .checkmark{color:#4caf50;font-weight:700}.comparison-table .cross{color:var(--margin-red);font-weight:700}.faq-list{max-width:50rem;margin-left:auto;margin-right:auto;text-align:center}.faq-list details{border:1px solid var(--hairline);border-radius:10px;background:var(--paper);margin-bottom:.6rem;text-align:left}.faq-list summary{cursor:pointer;padding:.85rem 1.1rem;font-weight:500;list-style:none;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:1.1rem;color:var(--pen-blue);font-family:var(--font-mono),monospace}.faq-list details[open] summary:after{content:"−"}.faq-list details p{margin:0;padding:0 1.1rem .95rem;color:var(--ink-soft);font-size:.95rem}.site-footer{border-top:1px solid var(--hairline);background:var(--paper);margin-top:auto}.footer-inner{display:grid;grid-template-columns:1fr auto;align-items:center;justify-items:start;grid-gap:2rem;gap:2rem;padding-block:2.5rem 2rem;font-size:.88rem;color:var(--muted)}.footer-inner>p{margin:0;color:var(--muted)}.footer-inner nav{justify-self:end;display:flex;flex-wrap:wrap;gap:1.6rem;justify-content:flex-end}.footer-inner a{color:var(--ink-soft);text-decoration:none;font-weight:500;transition:color .2s}.footer-inner a:hover{color:var(--pen-blue)}@media (max-width:700px){.footer-inner{grid-template-columns:1fr;gap:1.5rem}.footer-inner nav{justify-self:start}}.print-sheet{display:none}@media print{body *{display:none!important}body .print-sheet{display:block!important}.print-sheet *{display:revert!important}.print-sheet{font-family:Georgia,serif;font-size:12pt;color:#000}.print-sheet a{color:#000}}@media (max-width:920px){.feature-grid{grid-template-columns:1fr 1fr}}@media (max-width:560px){.feature-grid{grid-template-columns:1fr}.header-nav{display:none}.hide-sm{display:none!important}.menubar-right .status-save{display:none}.toolbar{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin}.tgroup{flex:none}.sheet-input{padding-left:1.5rem;padding-right:1rem;min-height:75vh}}