:root{--green:#68ad68;--green-dark:#4d914e;--bg:#eee;--text:#444;--muted:#888;--link:#5483b7;--paper:#fff;--border:#ddd;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--text);font-size:16px;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:var(--bg)}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid #3578b3;outline-offset:3px}button{color:inherit}button svg{pointer-events:none}button{border:0;background:transparent}input,textarea{color:inherit}textarea{tab-size:2}.navbar{height:42px;background:var(--green);color:white;position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:12px;padding:0 18px;box-shadow:0 1px 0 #0000000c}.brand-button{display:flex;align-items:center;padding:0;color:white;gap:4px}.caret{font-size:14px}.project-name{font-size:15px;font-weight:600;color:white;white-space:nowrap;max-width:230px;overflow:hidden;text-overflow:ellipsis}.project-name:hover{text-decoration:none}.search-wrap{position:absolute;left:50%;transform:translateX(-50%);width:40%;height:32px}.search-wrap input{height:32px;width:100%;background:#ffffff27;border:0;border-radius:3px;outline:0;color:#fff;padding:4px 66px 4px 12px;font-size:14px}.search-wrap input::placeholder{color:#ffffffa3}.search-wrap input:focus{background:#fff;color:#444}.search-wrap input:focus::placeholder{color:#aaa}.search-wrap kbd{position:absolute;right:33px;top:8px;font-size:11px;opacity:.6;font-family:inherit;pointer-events:none}.search-icon{position:absolute;right:13px;top:8px;width:13px;height:13px;border:2px solid currentColor;border-radius:50%;pointer-events:none}.search-icon:after{content:"";width:6px;height:2px;background:currentColor;position:absolute;right:-5px;bottom:-3px;transform:rotate(45deg)}.search-wrap:focus-within .search-icon{color:#888}.search-wrap:focus-within kbd{display:none}.nav-actions{display:flex;align-items:center;margin-left:auto;gap:15px}.local-badge{font-size:10px;letter-spacing:1.1px;border:1px solid #ffffff70;border-radius:3px;padding:3px 5px;opacity:.9}.nav-button{font-size:29px;line-height:30px;color:#fff;padding:0}.help-button{font-size:14px;font-weight:700;border:1.5px solid white;border-radius:50%;width:19px;height:19px;line-height:16px}.avatar{background:#edf5e8;color:#568f52;width:27px;height:27px;border-radius:50%;font-size:13px;font-weight:600}.home{max-width:1450px;padding:24px 40px 70px;margin:auto}.list-toolbar{display:flex;align-items:center;gap:20px;margin:0 0 24px;min-height:24px;font-size:14px;color:#777}.list-toolbar .summary{margin-right:auto;font-size:13px;color:#999}.plain-select{border:0;background:transparent;color:#666;padding:2px 0;cursor:pointer;max-width:160px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:18px 16px;align-items:start}.card{position:relative;display:block;height:174px;padding:12px;background:var(--paper);box-shadow:0 2px 1px #00000025;border-radius:1px;color:#555;overflow:hidden;text-decoration:none!important;transition:box-shadow .12s,transform .12s;outline-offset:3px}.card:hover{box-shadow:0 3px 7px #00000028;transform:translateY(-1px)}.card.pinned{clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%)}.card.pinned:after{content:"";position:absolute;right:0;top:0;border-style:solid;border-width:0 0 14px 14px;border-color:transparent transparent #aaa transparent}.card-title{font-size:14px;font-weight:650;line-height:1.6;margin:0 0 9px;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-preview{font-size:13px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;color:#888;overflow-wrap:anywhere}.card-preview .strong{font-size:inherit}.card-preview .page-link,.card-preview .tag{color:var(--link)}.card-preview img{width:100%;height:115px;object-fit:cover}.card-preview br+br{display:none}.card-preview code{font-size:11px}.cards.list-view{display:flex;flex-direction:column;gap:0;background:var(--paper)}.list-view .card{width:100%;height:auto;min-height:62px;display:flex;align-items:center;gap:30px;box-shadow:none;border-bottom:1px solid var(--bg);clip-path:none}.list-view .card-title{flex:0 0 220px;margin:0}.list-view .card-preview{display:block;white-space:nowrap;text-overflow:ellipsis;max-height:25px}.list-view .card:after{display:none}.list-view img{display:none}.empty{padding:75px 20px;text-align:center;color:#999}.empty h2{font-size:20px;font-weight:500;color:#666}.primary{background:var(--green);color:#fff;padding:9px 18px;border-radius:3px;font-size:14px}.primary:hover{background:var(--green-dark)}.secondary{background:#f0f0f0;padding:9px 16px;border-radius:3px;font-size:14px}.danger{color:#c2564c}.page-layout{max-width:1064px;margin:30px auto 0;position:relative;padding:0 40px 60px 0}.page-paper{background:var(--paper);border-radius:3px;min-height:440px;position:relative;padding:42px 50px 40px;box-shadow:0 0 1px #0000000a}.page-title{width:100%;border:0;outline:0;background:transparent;font-size:28px;line-height:1.5;font-weight:600;margin-bottom:34px;padding:0;letter-spacing:.01em}.page-title::placeholder{color:#bbb}.editor{min-height:220px;position:relative;font-size:16px;line-height:1.85;cursor:text}.line{min-height:30px;position:relative;overflow-wrap:anywhere;white-space:pre-wrap;padding:0 0 0 0}.line:before{content:"";position:absolute;left:-50px;top:0;bottom:0;width:2px;background:#8bc48b44}.line:hover:before{background:#8bc48b99}.line.active:before{background:var(--green)}.line-content{display:block;min-height:30px;position:relative}.bullet{position:absolute;margin-left:-16px;color:#555}.quote{border-left:3px solid #ddd;color:#888;padding-left:13px!important}.strong{font-weight:700}.size-2{font-size:1.28em}.size-3{font-size:1.6em}.size-4{font-size:1.9em}.strike{text-decoration:line-through}.italic{font-style:italic}.underline{text-decoration:underline}.muted{color:#999}.page-link.missing{color:#b87942}.tag{color:var(--link)}code{font-family:Menlo,Consolas,monospace;background:#f3f3f3;font-size:.88em;padding:2px 4px;border-radius:2px}.block-label{display:block;background:#eee;font:12px/26px Menlo,monospace;color:#777;padding:0 10px;margin-top:10px}.code-line{display:block;white-space:pre-wrap;font-size:13px;line-height:1.85;background:#f5f5f5;padding:0 10px;border-radius:0}.table-row{display:flex;white-space:pre-wrap}.table-row>span{flex:1;min-width:80px;border:1px solid #ddd;padding:3px 10px;font-size:14px}.embedded-image{display:block;max-width:100%;max-height:460px;object-fit:contain;margin:7px 0}.line-input{font:inherit;line-height:1.85;resize:none;background:#f8fcf7;color:#444;border:0;outline:0;width:100%;margin:0;padding:0;display:block;overflow:hidden;border-radius:0;min-height:30px}.editor-tail{height:80px;cursor:text;color:#bbb;padding-top:8px;font-size:14px}.page-meta{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#aaa;margin-top:24px}.page-tools{position:absolute;right:-7px;top:7px;display:flex;flex-direction:column;gap:17px}.tool-button{width:32px;height:30px;font-size:23px;color:#999;line-height:24px}.tool-button:hover{color:var(--green-dark)}.tool-button.small{font-size:18px}.related{margin:30px 0}.related-heading{font-size:14px;font-weight:400;color:#999;margin:24px 0 14px;display:flex;gap:10px;align-items:center}.related-heading a{font-weight:600}.related .cards{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.new-links{display:flex;gap:10px;flex-wrap:wrap}.new-link{background:#e6e6e6;color:#ae7b4d;padding:7px 12px;font-size:14px}.related-filter{border:0;background:#ffffff70;padding:6px 10px;float:right;outline:none;width:200px;font-size:13px}.dropdown{position:fixed;z-index:60;top:45px;left:12px;background:#fff;border:1px solid #ddd;box-shadow:0 4px 15px #0002;min-width:235px;border-radius:3px;padding:6px 0}.dropdown button{display:block;width:100%;text-align:left;padding:9px 17px;font-size:14px}.dropdown button:hover{background:#f0f5ef}.dropdown hr{border:0;border-top:1px solid #eee;margin:5px 0}.dropdown .menu-label{padding:8px 17px;font-size:11px;letter-spacing:.5px;color:#aaa}.loading{padding:70px;text-align:center;color:#999}#statusbar{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-between;pointer-events:none;font-size:11px;color:#999;padding:5px 14px;background:#eeeeeee8;z-index:10}#save-status.error{color:#b64738;pointer-events:auto;cursor:pointer}#toast{position:fixed;bottom:35px;left:50%;transform:translateX(-50%);background:#3c443b;color:#fff;box-shadow:0 4px 12px #0002;border-radius:4px;padding:12px 20px;font-size:14px;max-width:90vw;z-index:100}dialog{border:0;border-radius:5px;padding:28px;box-shadow:0 14px 60px #0003;max-width:600px;width:calc(100% - 36px);color:var(--text)}dialog::backdrop{background:#0005}dialog h2{font-size:20px;margin:0 0 22px;font-weight:600}.dialog-close{float:right;font-size:24px;color:#999;margin:-10px -8px 0 0}.field{display:block;width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:3px;outline-color:var(--green);font-size:16px}.field-label{font-size:14px;display:block;margin:16px 0 8px}.dialog-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:24px}.dialog-note{font-size:13px;color:#888;line-height:1.8}.history-list{max-height:430px;overflow:auto}.history-entry{border-top:1px solid #eee;padding:15px 0}.history-entry summary{font-size:14px;cursor:pointer}.history-entry pre{white-space:pre-wrap;max-height:180px;overflow:auto;font-size:13px;color:#888}.history-entry button{font-size:13px;color:var(--green-dark)}.trash-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eee;padding:12px 0;gap:10px}.trash-row span{overflow-wrap:anywhere}.trash-row button{color:var(--green-dark);white-space:nowrap;font-size:14px}.source-editor{width:100%;min-height:360px;resize:vertical;border:0;outline:0;font:14px/1.9 Menlo,monospace;background:#fafafa;padding:12px}.suggestions{position:absolute;left:0;top:100%;min-width:220px;max-width:100%;background:white;border:1px solid #ddd;box-shadow:0 4px 15px #0002;z-index:20;padding:4px 0;white-space:normal}.suggestion{display:block;padding:6px 12px;width:100%;text-align:left;font-size:14px;overflow:hidden;text-overflow:ellipsis}.suggestion.selected,.suggestion:hover{background:#edf5ea}.drop-active .page-paper{outline:3px dashed var(--green)}.rename-note{font-size:12px;color:#999}.mobile-only{display:none}
@media(min-width:1500px){.home{max-width:1460px}.cards{grid-template-columns:repeat(8,minmax(0,1fr))}}
@media(max-width:1100px){.page-layout{margin:24px 35px 0 25px;padding-right:30px}.page-tools{right:-10px}.search-wrap{width:38%}.project-name{max-width:180px}}
@media(max-width:700px){.navbar{gap:7px;padding:0 10px}.project-name{max-width:110px;font-size:13px}.search-wrap{position:relative;left:auto;transform:none;flex:1;width:auto;margin-left:8px}.search-wrap input{padding-right:25px;font-size:13px}.search-wrap kbd,.local-badge,.help-button,.avatar{display:none}.nav-actions{gap:0}.home{padding:22px 16px 60px}.cards{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:14px}.list-toolbar{gap:12px;margin-bottom:18px}.list-toolbar .summary{font-size:12px}.plain-select{font-size:13px;max-width:115px}.page-layout{margin:16px 10px 0;padding:0 0 50px}.page-paper{padding:48px 22px 25px}.page-title{font-size:25px;margin-bottom:26px}.page-tools{top:8px;right:10px;flex-direction:row;gap:5px}.line:before{left:-22px}.page-meta{font-size:11px}.related{padding:0 5px}.related-filter{width:140px}.list-view .card{display:block}.list-view .card-title{margin-bottom:4px}.related .cards{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}
.whitespace-layer{position:absolute;z-index:1;pointer-events:none;user-select:none;color:transparent;white-space:pre-wrap;overflow-wrap:break-word;word-break:normal;overflow:hidden;box-sizing:border-box}
.whitespace-dot{background-image:radial-gradient(circle,#94a390 1px,transparent 1.2px);background-position:center;background-repeat:no-repeat;background-size:3px 3px}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.line.selected .line-content,.line.selected .code-line,.line.selected .block-label,.line.selected .table-row{background:#cfe2f6}
body.selecting{user-select:none;-webkit-user-select:none;cursor:default}
.line-anchor{position:absolute;left:-46px;top:5px;width:22px;height:20px;padding:0;font-size:12px;line-height:20px;color:#b5b5b5;text-align:center;border-radius:2px;opacity:0}
.line:hover .line-anchor,.line-anchor:focus-visible{opacity:1}
.line-anchor:hover{color:var(--green-dark);background:#f0f5ef}
.line.flash{animation:line-flash 2.4s ease-out}
@keyframes line-flash{0%,40%{background:#fff3b8}100%{background:transparent}}
.icon{display:inline-block;vertical-align:middle;margin:0 1px;text-decoration:none!important}
.icon-image{width:1.6em;height:1.6em;border-radius:50%;object-fit:cover;vertical-align:middle}
.icon-fallback{display:inline-flex;align-items:center;justify-content:center;width:1.6em;height:1.6em;border-radius:50%;background:#e6e6e6;color:#777;font-size:.8em;vertical-align:middle}
.icon.missing .icon-fallback{background:#efe4d8;color:#ae7b4d}
.block-label{display:flex;justify-content:space-between;align-items:center}
.copy-code{font-size:11px;color:#888;padding:0 6px;opacity:0}
.line:hover .copy-code,.copy-code:focus-visible{opacity:1}
.copy-code:hover{color:var(--green-dark)}
.tok-k{color:#a626a4}.tok-s{color:#4c8a49}.tok-n{color:#986801}.tok-c{color:#999;font-style:italic}.tok-f{color:#4078f2}
.embed-youtube{display:block;margin:7px 0;max-width:640px}
.embed-play{background:#f3f3f3;border:1px solid #ddd;border-radius:3px;padding:12px 22px;font-size:14px}
.embed-play:hover{background:#eaf2e7}
.youtube-frame{display:block;width:100%;aspect-ratio:16/9;border:0}
code.math{background:transparent}
code.math-rendered{font-family:inherit;font-size:1em;padding:0;background:none}
.line-content .katex{font-size:1.08em}
mark{background:#fff0a0;color:inherit;padding:0 1px;border-radius:1px}
.project-link{color:#7a6bb0}
.diff{margin:6px 0 10px;border-left:2px solid #ddd;padding-left:8px}
.diff-line{font:12.5px/1.7 Menlo,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}
.diff-mark{display:inline-block;width:1.4em;color:#aaa}
.diff-add .diff-mark{color:var(--green-dark);font-weight:700}
.diff-del{color:#b64738;text-decoration:line-through}
.diff-gap{color:#bbb;font-size:12px;padding-left:1.4em}
.full-text{margin:6px 0}.full-text summary{font-size:13px;color:#999}
.code-field{font:13px/1.7 Menlo,Consolas,monospace;resize:vertical;white-space:pre}
.trash-actions{display:flex;gap:16px;flex:none}
.armed{background:#c2564c!important;color:#fff!important;border-radius:3px;padding:2px 8px}
.dialog-actions .danger{margin-right:auto}
.field-label input[type=checkbox]{margin-right:6px}
@media(max-width:700px){.line-anchor{display:none}}
.login{display:flex;justify-content:center;padding:80px 16px}
.login-card{background:var(--paper);padding:32px 36px;width:100%;max-width:380px;box-shadow:0 2px 1px #00000025}
.login-card h1{font-size:20px;font-weight:600;margin:0 0 8px}
.login-error{color:#b64738;font-size:14px;margin:12px 0 0}
