.comments .cm-list{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.comments .cm-list:empty{display:none}.comments .cm-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 16px}.comments .cm-item header{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}.comments .cm-item b{font-size:14px;color:var(--text)}.comments .cm-item time{font-size:12px;color:var(--text-3)}.comments .cm-item footer{display:flex;gap:16px;margin-top:6px}.comments .cm-re{margin-left:auto}.comments .cm-item header{align-items:center;flex-wrap:wrap;row-gap:2px}.comments .cm-av{width:22px;height:22px;flex:none}.comments .cm-item footer button{font:inherit;font-size:12px;font-weight:600;color:var(--text-3);background:none;border:0;padding:0;cursor:pointer}.comments .cm-item footer button:hover{color:var(--accent)}.comments .cm-tr{margin-left:auto;font:inherit;font-size:12px;color:var(--accent);background:none;border:0;padding:0;cursor:pointer}.comments .cm-tr:hover{text-decoration:underline}.comments .cm-tr:disabled{color:var(--text-3);cursor:default;text-decoration:none}.comments .cm-reply{margin-left:28px}.comments .cm-owner{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.comments .cm-badge{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--accent);border-radius:999px;padding:2px 8px}.comments .cm-to-nick{font-size:12px;color:var(--text-3)}.comments .cm-hl{box-shadow:0 0 0 2px var(--accent)}.comments .cm-to{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0;font-size:13px;color:var(--text-2);background:color-mix(in srgb,var(--accent) 10%,transparent);border-radius:10px;padding:8px 8px 8px 12px}.comments .cm-to[hidden]{display:none}.comments .cm-x{font:inherit;font-size:18px;line-height:1;color:var(--text-3);background:none;border:0;padding:2px 6px;cursor:pointer}.comments .cm-me{margin:0;font-size:13px;color:var(--text-2);display:flex;align-items:center;gap:8px}.comments .cm-me[hidden],.comments.cm-is-owner .cm-row,.comments.cm-is-owner .cm-check{display:none}.comments .cm-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-2);cursor:pointer}.comments .cm-check input{accent-color:var(--accent);width:16px;height:16px;margin:0}.comments .cm-item p{margin:0;font-size:15px;line-height:1.55;color:var(--text-2);white-space:pre-wrap;overflow-wrap:anywhere}.comments .cm-empty{color:var(--text-3);font-size:14px;margin:0 0 16px}.comments .cm-form{display:flex;flex-direction:column;gap:12px}.comments .cm-row{display:grid;grid-template-columns:1fr;gap:12px}@media (min-width: 640px){.comments .cm-row{grid-template-columns:1fr 1fr}}.comments .cm-field{display:flex;flex-direction:column;gap:5px}.comments .cm-field>span{font-size:12px;font-weight:600;color:var(--text-2)}.comments .cm-field em{font-style:normal;font-weight:400;color:var(--text-3)}.comments .cm-field input,.comments .cm-field textarea{font:inherit;font-size:15px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 12px;width:100%;transition:border-color .15s,box-shadow .15s}.comments .cm-field textarea{resize:vertical;min-height:104px}.comments .cm-field input:focus,.comments .cm-field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.comments .cm-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.comments .cm-foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.comments .cm-foot .btn:disabled{opacity:.6;cursor:default}.comments .cm-status{margin:0;font-size:13px;color:var(--text-3)}.comments .cm-status.ok{color:var(--green)}.comments .cm-status.err{color:var(--red)}.comments .cm-bad{border-color:var(--red)!important}.comments .cm-field input,.comments .cm-field textarea{background:#76768014;border:1px solid rgba(118,118,128,.18);border-radius:12px;box-shadow:inset 0 1px 2px #00000014,0 1px #ffffffb3;transition:border-color .2s,box-shadow .25s,background .2s}[data-theme=dark] .comments .cm-field input,[data-theme=dark] .comments .cm-field textarea{background:#ffffff0f;border-color:#ffffff1f;box-shadow:inset 0 1px 2px #00000073,0 1px #ffffff0d}.comments .cm-field input:hover:not(:focus),.comments .cm-field textarea:hover:not(:focus){border-color:#76768066}.comments .cm-field input:focus,.comments .cm-field textarea:focus{border-color:#0a84ffe6;box-shadow:inset 0 1px 2px #0000001a,0 0 0 3px #0a84ff40}[data-theme=dark] .comments .cm-field input:focus,[data-theme=dark] .comments .cm-field textarea:focus{box-shadow:inset 0 1px 2px #00000073,0 0 0 3px #0a84ff59}.comments .cm-check{gap:10px}.comments .cm-check input{-webkit-appearance:none;appearance:none;position:relative;flex:none;width:44px;height:26px;margin:0;border-radius:13px;background:#7676803d;box-shadow:inset 0 1px 2px #0000004d;cursor:pointer;transition:background .25s}[data-theme=dark] .comments .cm-check input{background:#7676805c}.comments .cm-check input:after{content:"";position:absolute;left:2px;top:2px;width:22px;height:22px;border-radius:50%;background:linear-gradient(180deg,#fff,#e6e6eb);box-shadow:0 1px 3px #0006;transition:transform .35s var(--g-spring)}.comments .cm-check input:checked{background:#34c759}.comments .cm-check input:checked:after{transform:translate(18px)}.comments .cm-check input:focus-visible{outline:none;box-shadow:inset 0 1px 2px #0000004d,0 0 0 3px #0a84ff73}@media (prefers-reduced-motion: reduce){.comments .cm-check input,.comments .cm-check input:after,.comments .cm-field input,.comments .cm-field textarea{transition:none}}.quick{background:var(--surface);border-radius:var(--radius-sm);box-shadow:var(--shadow);padding:18px 20px 20px;margin:40px 0 16px}.quick-label{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 14px}.quick-strip{display:grid;grid-auto-flow:column;grid-auto-columns:1fr}.quick-item{display:flex;flex-direction:column;gap:4px;padding:0 16px;border-left:1px solid var(--border);text-decoration:none;color:inherit;min-width:0}.quick-item:first-child{padding-left:0;border-left:0}.quick-v{font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.15;font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap;transition:color .15s}a.quick-item:hover .quick-v{color:var(--accent)}.quick-l{font-size:13px;line-height:1.35;color:var(--text-2)}.quick+.proscons{margin-top:16px}@media (max-width: 600px){.quick{padding:16px 0}.quick-label{padding:0 18px}.quick-strip{grid-auto-columns:46%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 18px 2px;scroll-padding:0 18px;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}.quick-strip::-webkit-scrollbar{display:none}.quick-item{scroll-snap-align:start;padding:0 12px}.quick-v{font-size:20px}}details.fold{margin:0 0 28px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}details.fold>summary{cursor:pointer;list-style:none;padding:16px 20px;font-weight:650;display:flex;justify-content:space-between;align-items:center;gap:12px}details.fold>summary::-webkit-details-marker{display:none}details.fold>summary:after{content:"▸";color:var(--accent);transition:transform .2s}details.fold[open]>summary:after{transform:rotate(90deg)}details.fold>summary small{display:block;font-weight:400;color:var(--text-3);font-size:13px;margin-top:2px}details.fold[open]{padding:0 20px 4px}details.fold[open]>summary{padding-left:0;padding-right:0}.toc-sheet-btn{position:fixed;left:16px;bottom:24px;z-index:150;padding:10px 16px;border-radius:999px;background:var(--g-bg);-webkit-backdrop-filter:var(--g-blur);backdrop-filter:var(--g-blur);border:1px solid var(--g-rim);box-shadow:var(--g-shadow);color:var(--text);font:inherit;font-size:14px;font-weight:600;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s,background .15s}.toc-sheet-btn:hover{background:var(--g-bg-thick)}.toc-sheet-btn.visible{opacity:1;pointer-events:auto}.toc-sheet{position:fixed;inset:0;z-index:1000;background:#00000047;display:flex;align-items:flex-end;justify-content:center;animation:g-fade .25s ease}.toc-sheet[hidden]{display:none}.toc-sheet-panel{width:100%;max-width:640px;max-height:80vh;overflow-y:auto;border-radius:22px 22px 0 0;padding:20px 24px 28px;background:var(--g-bg-menu);-webkit-backdrop-filter:blur(30px) saturate(180%);backdrop-filter:blur(30px) saturate(180%);border:1px solid var(--g-rim);border-bottom:0;box-shadow:inset 0 1px #ffffffb3,0 -10px 40px #0000002e;animation:g-sheet-in .42s var(--g-spring)}[data-theme=dark] .toc-sheet-panel{box-shadow:inset 0 1px #ffffff1f,0 -10px 40px #00000080}@keyframes g-sheet-in{0%{transform:translateY(40%);opacity:.4}}@keyframes g-fade{0%{opacity:0}}@media (prefers-reduced-motion: reduce){.toc-sheet,.toc-sheet-panel{animation:none}}.toc-sheet-panel h4{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin-bottom:12px}.toc-sheet-panel ul{list-style:none;margin:0 0 8px;padding:0}.toc-sheet-panel a{display:block;padding:7px 0;color:var(--text-2);text-decoration:none}.toc-sheet-panel .toc-group-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin:10px 0 2px}html.toc-sheet-open{overflow:hidden}.toc-sheet-panel .toc-grid{counter-reset:tocg}.toc-sheet-panel .toc-group{counter-increment:tocg}.toc-sheet-panel a.active{color:var(--accent);font-weight:650}@media (max-width: 760px){.toc .toc-grid,.toc-sheet-panel .toc-grid{display:block}.toc .toc-group,.toc-sheet-panel .toc-group{padding:0;margin:0;background:none;border-top:1px solid var(--border)}.toc .toc-group .toc-group-label,.toc-sheet-panel .toc-group .toc-group-label{display:flex;align-items:center;gap:8px;margin:0;padding:11px 0;cursor:pointer;user-select:none;font-size:16px;font-weight:600;text-transform:none;letter-spacing:0;line-height:1.3;color:var(--text);border:0}.toc .toc-group .toc-group-label:after,.toc-sheet-panel .toc-group .toc-group-label:after{content:attr(data-n);margin-left:auto;font-size:15px;font-weight:400;color:var(--text-3)}.toc .toc-group .toc-group-label:before,.toc-sheet-panel .toc-group .toc-group-label:before{content:"›";order:2;display:inline-block;width:12px;margin:0;text-align:center;font-size:20px;font-weight:400;line-height:1;color:var(--text-3);letter-spacing:0;transition:transform .2s}.toc .toc-group.open .toc-group-label:before,.toc-sheet-panel .toc-group.open .toc-group-label:before{transform:rotate(90deg);color:var(--accent)}.toc .toc-group.open .toc-group-label:after,.toc-sheet-panel .toc-group.open .toc-group-label:after{color:var(--accent)}.toc .toc-group:not(.open) ul,.toc-sheet-panel .toc-group:not(.open) ul{display:none}.toc .toc-grid ul,.toc-sheet-panel .toc-group ul{padding:0 0 8px;margin:0;gap:0}.toc .toc-grid a{font-size:15px;padding:5px 0}.toc .toc-soon{display:block;padding:3px 0}.prose .toc{padding:16px 20px 6px}.prose .toc h4{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin:0 0 6px}}@media (min-width: 1440px){.toc-sheet-btn,.toc-sheet{display:none!important}}.read-bar,.toc-sheet-theme{display:none}@media (max-width: 600px){.toc-sheet-btn,.scroll-top,.scroll-bottom{display:none!important}.theme-toggle{transition:opacity .2s}html.read-bar-zone .theme-toggle{opacity:0;pointer-events:none}.read-bar{display:flex;align-items:center;gap:2px;position:fixed;z-index:160;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));min-height:52px;padding:5px 4px 5px 18px;border-radius:30px;overflow:hidden;background:var(--g-bg-thick);-webkit-backdrop-filter:var(--g-blur);backdrop-filter:var(--g-blur);border:1px solid var(--g-rim);box-shadow:var(--g-shadow);transform:translateY(calc(100% + 24px + env(safe-area-inset-bottom)));opacity:0;pointer-events:none;transition:transform .42s var(--g-spring),opacity .2s}.read-bar.visible{transform:none;opacity:1;pointer-events:auto}.read-bar button{border:0;background:none;padding:0;margin:0;font:inherit;color:var(--text-2);cursor:pointer;-webkit-tap-highlight-color:transparent}.read-bar-title{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;text-align:left;line-height:1.15}.read-bar-title small{font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--text-3)}.read-bar-title b{max-width:100%;font-size:15px;line-height:1.17;font-weight:600;color:var(--text);text-wrap:balance;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.read-bar-btn{flex:none;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .15s}.read-bar-btn:active{background:#7f7f7f29;transform:scale(.92)}.read-bar-sep{flex:none;width:1px;height:24px;background:#7f7f7f40}.read-bar-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--accent);transform:scaleX(0);transform-origin:0 50%}.toc-sheet-panel{padding-bottom:calc(28px + env(safe-area-inset-bottom))}.toc-sheet-theme{display:flex;align-items:center;justify-content:space-between;padding:0 0 14px;margin:0 0 14px;border-bottom:1px solid var(--border);font-size:15px;font-weight:600;color:var(--text)}.theme-seg{--tt-s: 44px;height:42px}.theme-seg .theme-ico,.theme-seg .theme-thumb{height:34px}}@media (prefers-reduced-motion: reduce){.read-bar{transition:opacity .2s}.read-bar-btn{transition:none}.read-bar-btn:active{transform:none}}.byline{display:flex;align-items:center;justify-content:space-between;gap:12px 16px;flex-wrap:wrap;margin:0 0 22px}.byline-text{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0;font-size:14px;color:var(--text-3)}.byline-text a{text-decoration:none}.byline-author{color:var(--text-2);font-weight:600}.byline-how{color:var(--accent);font-weight:500}.byline-sep{opacity:.6}.byline-upd{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.byline-date--short{display:none}.byline-calc{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;border:1.5px solid var(--accent);color:var(--accent);background:var(--surface);font-size:14px;font-weight:600;text-decoration:none;white-space:nowrap;transition:background .15s}.byline-calc:hover{background:var(--surface-2)}@media (max-width: 760px){.byline{margin-top:-12px}.byline-calc{flex-basis:100%;justify-content:center;padding:12px 16px;font-size:15px}}@media (max-width: 390px){.byline-date{display:none}.byline-date--short{display:inline}}.byline .byline-calc{border:1px solid rgba(0,122,255,.18);background:#007aff17;color:var(--accent);box-shadow:inset 0 1px #ffffffb3,0 1px 2px #0000000a;transition:background .15s,transform .3s var(--g-spring)}.byline .byline-calc:hover{background:#007aff26}.byline .byline-calc:active{transform:scale(.96)}[data-theme=dark] .byline .byline-calc{border-color:#0a84ff4d;background:#0a84ff29;color:#4ea3ff;box-shadow:inset 0 1px #ffffff1a}@media (max-width: 760px){.byline .byline-calc{flex-basis:auto;padding:10px 16px;font-size:15px}}@media (prefers-reduced-motion: reduce){.byline .byline-calc:active{transform:none}}details.fold>summary:after{content:"";flex:none;width:28px;height:28px;border-radius:50%;background:#7676801f url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1.5 1.75 6 6.25l4.5-4.5' fill='none' stroke='%23007aff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px 8px no-repeat;box-shadow:inset 0 1px 2px #0000000f;transition:transform .4s var(--g-spring),background-color .15s}details.fold>summary:hover:after{background-color:#76768033}details.fold[open]>summary:after{transform:rotate(180deg)}[data-theme=dark] details.fold>summary:after{background-color:#76768042;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1.5 1.75 6 6.25l4.5-4.5' fill='none' stroke='%230a84ff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");box-shadow:inset 0 1px 2px #00000059}@media (prefers-reduced-motion: reduce){details.fold>summary:after{transition:none}}
