@font-face{font-family:Control;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Control-UprightRegular.woff2) format("woff2")}@font-face{font-family:Control;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/Control-UprightMediumTNT.woff2) format("woff2")}:root{--ground:#121212;--card:#171717;--ink:#ffffff;--ink-2:color-mix(in srgb,var(--ink) 50%,transparent);--ink-3:color-mix(in srgb,var(--ink) 30%,transparent);--rule:color-mix(in srgb,var(--ink) 5%,transparent);--edge-line:color-mix(in srgb,var(--ink) 4%,transparent);--track:color-mix(in srgb,var(--ink) 20%,transparent);--panel:var(--card);--sheet:color-mix(in srgb,var(--ground) 84%,#000);--sans:"Control",system-ui,-apple-system,sans-serif;--danger:#f87171;--accent:#4ac3ff;--accent-line:color-mix(in srgb,var(--accent) 50%,transparent);--accent-rule:color-mix(in srgb,var(--accent) 12%,transparent);--accent-wash:color-mix(in srgb,var(--accent) 5%,transparent);--radius:8px;--radius-lg:12px;--edge:clamp(20px,4vw,56px);--maxw:1600px}*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}dd,dl,h1,h2,h3,ol,p,ul{margin:0}ul{list-style:none;padding:0}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.shell{max-width:var(--maxw);margin:0 auto;padding:0 var(--edge)}.label{font-size:12px;color:var(--ink-3)}.f{border-bottom:1px solid var(--rule);transition:color .12s linear,border-color .12s linear}.f:hover{color:var(--ink);border-bottom-color:var(--ink)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.mast{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:14px 32px;padding:clamp(24px,4vw,40px) 0 24px;border-bottom:1px solid var(--rule)}.wordmark{display:inline-flex;color:var(--accent)}.wordmark svg{display:block;width:122px;height:auto}@media (max-width:560px){.wordmark svg{width:98px}}.nav{display:flex;flex-wrap:wrap;align-items:baseline;gap:20px}.nav a,.nav-btn{font-size:14px;color:var(--ink-2)}.nav a:hover,.nav-btn:hover{color:var(--ink)}.admin{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:clamp(28px,3vw,48px);gap:clamp(28px,3vw,48px)}.admin,.admin-narrow{padding:clamp(32px,4vw,56px) 0 96px}.admin-narrow{max-width:660px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:28px}.page-actions{display:flex;gap:8px}.page-title{font-size:clamp(26px,3.4vw,34px);font-weight:700;letter-spacing:-.035em}.panel-title{font-size:13px;color:var(--ink-3);font-weight:400;padding-bottom:12px;border-bottom:1px solid var(--ink);margin-bottom:4px}.hint{font-size:13.5px;margin-top:8px;max-width:60ch}.empty,.hint{color:var(--ink-3)}.empty{font-size:14px;padding:16px 0}.rows{display:flex;flex-direction:column}.rows li{border-bottom:1px solid var(--rule)}.row{display:flex;align-items:baseline;gap:12px;padding:13px 0;transition:opacity .12s linear}a.row:hover{opacity:.62}.row-main{font-weight:700;letter-spacing:-.012em}.row-sub{font-size:13px;margin-right:auto}.pill,.row-sub{color:var(--ink-3)}.pill{font-size:11.5px;padding:3px 9px;border:1px solid var(--rule);border-radius:var(--radius)}.stack{display:flex;flex-direction:column;gap:16px;margin-top:24px}.pair{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px 12px;gap:16px 12px;align-items:end}.field{display:flex;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;border:0}.field>span:not(.fbox){font-size:14px;line-height:1;color:var(--ink)}.field small{font-size:14px;line-height:1.2;color:var(--ink-2)}.fbox,input,select,textarea{font:inherit;font-size:14px;line-height:1;color:var(--ink);background:color-mix(in srgb,var(--ink) 2%,transparent);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:0 2px 3px rgba(10,10,10,.05);padding:0 10px;height:36px;width:100%;transition:border-color .12s linear,background-color .12s linear}input[type=checkbox],input[type=radio]{width:auto;height:auto;padding:0;box-shadow:none}textarea{height:auto;min-height:58px;padding:10px 10px 12px;line-height:1.2;resize:vertical}::placeholder{color:var(--ink-2);opacity:1}.fbox:hover,input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb,var(--ink) 12%,transparent)}input:focus,select:focus,textarea:focus{border-color:var(--accent-line);outline:none}.fbox:focus-within{border-color:var(--accent-line)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:32px;background:color-mix(in srgb,var(--ink) 2%,transparent) url(/canvas/icon-selector-down.svg) right 10px center /16px no-repeat;text-overflow:ellipsis;cursor:pointer}select option{background:var(--card);color:var(--ink)}input[type=date]::-webkit-calendar-picker-indicator{width:16px;height:16px;background:url(/canvas/icon-calendar.svg) 50%/16px no-repeat;color:transparent;cursor:pointer}.fbox{display:flex;align-items:center;gap:4px}.fbox-num{gap:8px;padding-right:4px}.fbox input{height:100%;flex:1 1;min-width:0;padding:0;border:0;background:none;box-shadow:none;-moz-appearance:textfield}.fbox input::-webkit-inner-spin-button,.fbox input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fbox-affix{font-style:normal;color:var(--ink-2);flex:none}.fbox-steps{display:flex;gap:2px;flex:none}.fbox-steps button{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:color-mix(in srgb,var(--ink) 2%,transparent);transition:background-color .12s linear}.fbox-steps button:hover{background:var(--rule)}.fbox-steps button:active{transform:scale(.94)}.ftabs-row{display:flex;gap:4px;padding:4px;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--ink) 2%,transparent)}.ftabs-row label{flex:1 1;min-width:0;position:relative}.ftabs-row input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.ftabs-row span{display:flex;align-items:center;justify-content:center;height:28px;padding:0 10px;border:1px solid transparent;border-radius:8px;font-size:14px;line-height:1;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background-color .15s linear,color .15s linear,border-color .15s linear}.ftabs-row label:hover span{color:var(--ink)}.ftabs-row input:checked+span{color:var(--ink);background:var(--sheet);border-color:var(--rule);box-shadow:0 2px 6px rgba(0,0,0,.1)}.ftabs-row input:focus-visible+span{outline:2px solid var(--accent);outline-offset:1px}.fscore{position:relative;height:36px;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--ink) 2%,transparent)}.fscore-fill{position:absolute;inset:0 auto 0 0;width:max(76px,var(--p));display:flex;align-items:center;padding:0 12px;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--rule);transition:width .08s linear}.fscore.is-unset .fscore-fill{width:76px;background:none}.fscore.is-unset .fscore-read{color:var(--ink-2)}.fscore-read{font-size:14px;line-height:1}.fscore-thumb{position:absolute;right:6px;top:5px;width:13px;height:24px;border-radius:6px;border:1px solid var(--rule);background:var(--ink-2);box-shadow:0 2px 6px rgba(10,10,10,.1)}.fscore input[type=range]{position:absolute;inset:0;height:100%;opacity:0}.fscore:focus-within .fscore-thumb{background:var(--ink)}.fscore-clear{position:absolute;right:-2px;top:-22px;font-size:14px;color:var(--ink-2)}.fscore-clear:hover{color:var(--ink)}.btn,.btn-solid{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;padding:0 16px;font:inherit;font-size:14px;line-height:1;white-space:nowrap;border-radius:var(--radius-lg);transition:background-color .12s linear,opacity .12s linear,transform .12s ease-out}.btn{color:var(--ink);background:color-mix(in srgb,var(--ink) 2%,transparent);border:1px solid var(--rule)}.btn:hover{background:var(--rule)}.btn-solid{color:var(--ground);background:var(--accent);box-shadow:0 2px 12px var(--accent-wash);align-self:flex-start}.btn-solid:hover{opacity:.88}.btn-solid:active,.btn:active{transform:scale(.97)}.btn-solid:disabled{opacity:.5;cursor:default}.form-error,.form-ok{font-size:14px;line-height:1.2}.form-error{color:var(--danger)}.form-ok{color:var(--ink-2)}@media (max-width:760px){input,select,textarea{font-size:16px}}@media (max-width:359px){.pair{grid-template-columns:1fr}}.landing{padding:clamp(56px,10vh,120px) 0 96px}.landing-title{font-size:clamp(34px,5vw,56px);font-weight:700;letter-spacing:-.04em;line-height:1}.landing-lede{color:var(--ink-2);max-width:46ch;margin-top:16px;font-size:16px}.landing .hint{margin-top:28px}.nav-muted{font-size:14px;color:var(--ink-3)}.site-head{justify-content:space-between;gap:14px 32px;padding:clamp(24px,3.4vw,40px) 0 clamp(20px,3vw,32px)}.site-head,.site-head-right{display:flex;align-items:center;flex-wrap:wrap}.site-head-right{gap:20px}.sel-trigger{display:inline-flex;align-items:center;gap:8px;font-size:13px;line-height:1;padding:8px 10px;border:1px solid var(--rule);border-radius:var(--radius);background:var(--ground);color:var(--ink-2);cursor:pointer;transition:color .12s linear,border-color .12s linear}.sel-trigger:hover{color:var(--ink);border-color:var(--ink-3)}.sel-trigger[data-state=open]{color:var(--ink);border-color:var(--ink)}.sel-chevron{display:inline-flex;color:var(--ink-3)}.sel-content{min-width:var(--radix-select-trigger-width);border:1px solid var(--rule);border-radius:var(--radius);background:var(--ground);padding:4px;z-index:60;box-shadow:0 8px 24px color-mix(in srgb,var(--ink) 12%,transparent)}.sel-viewport{display:flex;flex-direction:column;gap:1px}.sel-item{display:flex;align-items:center;gap:9px;font-size:13.5px;padding:8px 10px;border-radius:calc(var(--radius) - 2px);color:var(--ink-2);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;outline:none}.sel-item[data-highlighted]{background:var(--panel);color:var(--ink)}.sel-check,.sel-item[data-state=checked]{color:var(--ink)}.sel-check{display:inline-flex;margin-left:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.bean,.index-page{padding-bottom:96px}.index-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:16px;padding-bottom:20px}.active-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.table-wrap{overflow-x:auto}table{width:100%;min-width:680px;border-collapse:collapse;text-align:left}thead th{border-bottom:1px solid var(--ink);padding:11px 16px 11px 0;font-size:12.5px;font-weight:400;color:var(--ink-3);white-space:nowrap}tbody td{padding:13px 16px 13px 0;border-bottom:1px solid var(--rule);vertical-align:baseline}tbody tr{transition:background-color .1s linear}tbody tr:hover{background:var(--panel)}.t-name{font-weight:700;letter-spacing:-.012em;display:flex;align-items:center;gap:8px}.t-name a:hover{opacity:.66}.t-quiet{font-size:13.5px}.t-num,.t-quiet{color:var(--ink-2)}.t-num{font-size:13px}.t-score{font-size:15px;font-weight:700}.t-public{font-size:15px;white-space:nowrap}.t-public .cnt{font-size:11px;color:var(--ink-3);margin-left:6px}.t-note{color:var(--ink-2);font-size:13px;max-width:40ch}.none{font-size:13.5px;color:var(--ink-3);font-weight:400}.dot{width:7px;height:7px;border-radius:50%;background:var(--ink);display:inline-block;flex:none}.row-edit{font-size:12.5px;color:var(--ink-3)}a.row:hover .row-edit{color:var(--ink)}.sub{margin-top:clamp(40px,5vw,64px)}.panel{display:flex;flex-direction:column}.gear-list{margin-bottom:clamp(28px,3vw,40px)}.bean-id{display:flex;flex-direction:column}.site-head.overlay{position:absolute;inset:0 0 auto 0;z-index:2}.bean{padding-bottom:0;--col-gutter:243fr;--col-main:709fr;--col-side:466fr;--col-rest:1197fr}.bean-top{display:grid;grid-template-columns:minmax(0,var(--col-gutter)) minmax(0,var(--col-main)) minmax(0,var(--col-side));grid-template-rows:auto 1fr;grid-gap:24px clamp(16px,1.6vw,24px);gap:24px clamp(16px,1.6vw,24px);align-items:start;padding:34px 0 0}.bean-top>.gutter{grid-column:1;grid-row:1/span 2;position:-webkit-sticky;position:sticky;top:24px}.bean-top>.bean-id{grid-column:2;grid-row:1}.bean-top>.bean-main{grid-column:2;grid-row:2;padding-top:clamp(28px,3vw,44px)}.bean-top>.bean-rail{grid-column:3;grid-row:1/span 2;position:-webkit-sticky;position:sticky;top:24px;display:flex;flex-direction:column}.bean-rail>.bean-side{padding-top:clamp(28px,3vw,44px)}.row-wide{display:grid;grid-template-columns:minmax(0,var(--col-gutter)) minmax(0,var(--col-rest));grid-gap:24px clamp(16px,1.6vw,24px);gap:24px clamp(16px,1.6vw,24px);align-items:start;border-top:1px solid var(--accent-line);padding-top:20px;margin-top:clamp(36px,4vw,56px)}.gutter{display:flex;flex-direction:column;gap:6px;font-size:16px}.gutter-title{font-size:16px;font-weight:400;color:var(--accent)}.row-body{display:flex;flex-direction:column}.bean-lip{height:20px;border:2px solid var(--accent);border-bottom:0;border-radius:12px 12px 0 0}.accent{color:var(--accent)}.accent-dim{color:color-mix(in srgb,var(--accent) 55%,var(--ground))}.muted{color:var(--ink-2)}.bean-title{font-size:clamp(38px,5vw,60px);font-weight:500;letter-spacing:-.03em;line-height:1;text-wrap:balance}.bean-by{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;font-size:16px}.figures{display:flex;gap:clamp(20px,2.4vw,32px)}.figures>div{display:flex;flex-direction:column;gap:14px}.fig{display:inline-block;font-size:clamp(38px,4.4vw,60px);font-weight:500;letter-spacing:-.03em;line-height:1}.fig-k{font-size:15px;color:var(--ink-2)}.bean-main,.bean-side{gap:clamp(28px,3vw,40px)}.bean-main,.bean-side,.block{display:flex;flex-direction:column}.block{gap:16px}.block-title{display:flex;align-items:baseline;justify-content:space-between;gap:16px;font-size:16px;font-weight:400;color:var(--accent);padding-top:16px;border-top:1px solid var(--accent-line)}.block-note{color:var(--ink-2)}.block-title+*{border-top:1px solid var(--accent-rule);padding-top:16px}.facts{display:flex;flex-direction:column}.fact{display:grid;grid-template-columns:110px minmax(0,1fr);grid-gap:24px;gap:24px;align-items:baseline;font-size:16px;padding:12px 0;border-bottom:1px solid var(--accent-rule)}.fact dt{color:var(--ink-2)}.fact dd{margin:0}.prose{font-size:16px;line-height:1.6;white-space:pre-wrap;max-width:68ch}.bars{display:flex;flex-direction:column;gap:12px}.bar-row{display:grid;grid-template-columns:106px minmax(0,1fr) 36px;align-items:center;grid-gap:12px;gap:12px;font-size:16px}.bar-k,.bar-n{color:var(--ink-2)}.bar-n{text-align:right}.bar-track{height:11px;border-radius:4px;background:color-mix(in srgb,var(--ink) 20%,transparent);overflow:hidden}.bar-fill{display:block;height:100%;border-radius:4px;background:var(--accent)}.bar-fill.ink{background:var(--ink)}table.log{min-width:1100px}table.log thead th{color:var(--ink-2)}table.log tbody td,table.log thead th{border-bottom:1px solid var(--accent-rule);font-size:16px}table.log tbody td{height:56px}table.log .t-note{color:var(--ink-2);max-width:34ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grind-list{display:flex;flex-direction:column;gap:8px;margin-top:20px;font-size:15px}.chart,.grind-list li{display:flex;gap:16px}.chart{margin:0;flex-direction:column}.chart-head{align-items:baseline;justify-content:space-between}.chart-head,.chart-legend{display:flex;gap:16px;flex-wrap:wrap}.chart-legend{align-items:center;font-size:15px}.chart-note{color:var(--ink-2)}.lg{display:inline-flex;align-items:center;gap:8px}.mark{width:12px;height:12px;background:var(--accent);display:inline-block}.mark.round{border-radius:50%}.chart-scroll{overflow-x:auto}.chart svg{display:block;width:100%;min-width:720px;height:auto}.band{fill:var(--accent-wash)}.band-label{fill:var(--ink);font-size:15px}.grid{stroke:color-mix(in srgb,var(--ink) 12%,transparent);stroke-width:1}.ax{fill:var(--ink-2);font-size:14px}.series{fill:none;stroke:var(--accent);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.pt{fill:var(--accent)}.pt-ring{fill:none;stroke:var(--accent);stroke-width:1.5}.pt-label{fill:var(--ink);font-size:15px}.bean-tail{border-top:1px solid var(--ink);margin-top:clamp(40px,5vw,64px);padding:22px 0}.back{gap:10px;font-size:16px}.back,.back-icon{display:inline-flex;align-items:center}.back-icon{width:24px;height:24px;border-radius:999px;background:color-mix(in srgb,var(--ink) 10%,transparent);justify-content:center;font-size:13px}.back:hover .back-icon{background:var(--ink);color:var(--ground)}.site-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px;padding:clamp(48px,6vw,88px) 0 clamp(32px,4vw,48px);font-size:15px;color:var(--ink-2)}.foot-right{display:flex;gap:clamp(24px,3vw,56px)}@media (max-width:1280px){.bean{--col-gutter:150fr;--col-main:640fr;--col-side:430fr;--col-rest:1090fr}}@media (max-width:1000px){.bean-top{grid-template-columns:minmax(0,1fr)}.bean-top>.bean-id,.bean-top>.bean-main,.bean-top>.bean-rail,.bean-top>.gutter{grid-column:1;grid-row:auto;position:static;padding-top:0}.bean-rail>.bean-side{padding-top:0}.row-wide{grid-template-columns:minmax(0,1fr);gap:16px}.bean-body>.gutter[aria-hidden]{display:none}}.panel-note{color:var(--ink-3);font-weight:400;margin-left:8px}.bars-cap{font-size:14px;color:var(--ink-2);max-width:52ch}.bars-cap,.sub-title{margin-top:4px}.spark-bars{display:inline-flex;align-items:flex-end;gap:2px;height:16px}.spark-bars i{width:4px;background:var(--ink-2);min-height:2px;border-radius:1px}.bean-side{gap:clamp(28px,4vw,44px)}.bean-side,.rate{display:flex;flex-direction:column}.rate{border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);background:color-mix(in srgb,var(--ink) 2.5%,transparent);border-radius:12px;overflow:hidden}.rate-body{display:flex;flex-direction:column;gap:24px;padding:16px}.rate-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.rate-labels{display:flex;flex-direction:column;min-width:0;min-height:2.8em;justify-content:center}.rate-band,.rate-lead{font-size:16px}.rate-band{color:var(--ink-2)}.rate-val{font-size:40px;font-weight:500;letter-spacing:-.03em;line-height:1;min-width:2.6em;text-align:right}.rate-slider{padding-bottom:16px}.rate-slider input[type=range]{height:38px;display:block}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:auto;box-shadow:none;background:transparent;margin:0;padding:0;border:0;cursor:pointer}input[type=range]::-webkit-slider-runnable-track{height:2px;background:color-mix(in srgb,var(--ink) 20%,transparent);margin:18px 0}input[type=range]::-moz-range-track{height:2px;background:color-mix(in srgb,var(--ink) 20%,transparent)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:38px;border-radius:999px;background:var(--ink);border:0;margin-top:-18px}input[type=range]::-moz-range-thumb{width:20px;height:38px;border-radius:999px;background:var(--ink);border:0}.rate-msg{font-size:14px;color:var(--ink-2);padding:0 16px 12px;min-height:2.8em}.rate-msg.error{color:var(--danger)}.rate-submit{display:flex;align-items:center;justify-content:center;height:54px;width:100%;font-size:16px;color:var(--ink);background:color-mix(in srgb,var(--ink) 2.5%,transparent);border:0;border-top:1px solid color-mix(in srgb,var(--ink) 8%,transparent);transition:background-color .12s linear,color .12s linear}.rate-submit:hover{background:var(--ink);color:var(--ground)}.rate-submit:disabled{opacity:.5;cursor:default}.roll{display:inline-block}.roll-inner{display:inline-flex;align-items:flex-start;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.roll-digit{display:inline-block;height:1.2em;overflow:hidden;line-height:1.2}.roll-strip{display:flex;flex-direction:column;transition:transform .42s cubic-bezier(.22,1,.36,1)}.roll-strip>span{height:1.2em;line-height:1.2;display:block}.roll-sep{display:inline-block;line-height:1}.roll-digit[data-lead]{opacity:0}.roll-digit{transition:opacity .26s linear}@media (prefers-reduced-motion:reduce){.roll-strip{transition:none}}.rate-foot{font-size:13px;color:var(--ink-3)}.auth-alt{margin-top:28px;border-top:1px solid var(--rule);padding-top:16px}.auth-alt summary{font-size:13px;color:var(--ink-3);cursor:pointer}.auth-alt summary:hover{color:var(--ink)}.show-more{align-self:flex-start;margin-top:16px}.bean-edit{align-self:flex-start;margin-top:10px;text-decoration:underline;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);text-underline-offset:3px}.bean-edit:hover{color:var(--ink);-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.canvas-page{min-height:100vh;overflow-x:clip;background-position:var(--pan-x,0) 0;background-image:radial-gradient(color-mix(in srgb,var(--ink) 7%,transparent) 1px,transparent 1px);background-size:calc(24px * var(--zoom, 1)) calc(24px * var(--zoom, 1))}.canvas{display:flex;flex-direction:column;gap:16px;padding:16px}.canvas-links,.canvas-status,.grip,.port{display:none}@media (min-width:1440px){.canvas{position:relative;display:block;padding:0;height:calc(var(--canvas-h) * var(--z, 1));cursor:-webkit-grab;cursor:grab}.canvas-plane{position:absolute;left:0;top:0;width:calc(100% / var(--z, 1));height:var(--canvas-h);transform:scale(var(--z,1));transform-origin:0 0}.canvas-links{display:block;position:absolute;inset:0;pointer-events:none;overflow:visible;z-index:1}.canvas-links path{fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round}.canvas .node{position:absolute;left:calc(var(--ox) + var(--x));top:calc(var(--oy) + var(--y));width:var(--w);z-index:2}.canvas .node.is-active{z-index:3}.canvas-status,.port{display:block}.grip{display:grid;grid-template-columns:repeat(3,4px);grid-auto-rows:4px;grid-gap:4px;gap:4px}}.node{position:relative;min-width:0;scroll-margin-top:40px}@media (min-width:761px) and (max-width:1439px){.canvas{padding-top:261px}}.canvas-status{position:fixed;left:40px;bottom:40px;font-size:14px;color:var(--ink-2);z-index:4}.ncard{position:relative;background:var(--card);border:1px solid var(--edge-line);border-radius:var(--radius-lg);box-shadow:inset 0 2px 2px rgba(255,255,255,.03);filter:drop-shadow(0 3px 2px rgba(0,0,0,.15))}.ncard,.ncard-stack{display:flex;flex-direction:column}.ncard-stack{gap:10px}.ncard-head{position:relative;display:flex;flex-direction:column;gap:16px;padding:24px}.ncard-title{font-size:14px;font-weight:400;line-height:1;color:var(--accent)}.ncard-part{padding:24px;border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:16px;font-size:14px}.ncard-foot{display:flex;justify-content:space-between;color:var(--ink-2)}.grip{position:absolute;top:0;right:0;padding:16px;cursor:-webkit-grab;cursor:grab;touch-action:none;z-index:1}.grip:active{cursor:-webkit-grabbing;cursor:grabbing}.grip i{display:block;background:var(--ink-2);border-radius:1px}.grip:focus-visible i,.grip:hover i{background:var(--ink)}.port{position:absolute;width:16px;height:16px;border-radius:50%;background:var(--accent);z-index:2}.port-left{left:-8px;top:23px}.port-right{right:-8px;top:26px}.port-top{top:-8px;left:calc(50% - 8px)}.port-bottom{bottom:-8px;left:calc(50% - 8px)}.logo-card{position:relative;width:205px;height:205px;flex:none;overflow:hidden;transition:width .36s cubic-bezier(.22,1,.36,1),height .36s cubic-bezier(.22,1,.36,1);background:var(--card);border:1px solid var(--edge-line);border-radius:var(--radius-lg);box-shadow:inset 0 2px 2px rgba(255,255,255,.03);filter:drop-shadow(0 3px 2px rgba(0,0,0,.15));z-index:10}@media (min-width:761px){.logo-card{position:fixed;left:40px;top:40px}}@media (max-width:760px){.logo-card{margin:16px 16px 0}}.logo-closed,.logo-open{position:absolute;top:0;left:0}.logo-closed{width:203px;height:203px}.logo-open{width:max-content;min-width:203px;padding:13px 14px 18px}.logo-closed[hidden],.logo-open[hidden]{display:none}.logo-btn{position:absolute;top:7px;display:block;padding:8px;border-radius:4px;transition:background-color .12s linear}.logo-btn:focus-visible,.logo-btn:hover{background:color-mix(in srgb,var(--ink) 10%,transparent)}.logo-btn img,.logo-mark svg{display:block}.logo-menu{left:7px}.logo-close{left:auto;right:6px}.logo-mark{position:absolute;left:28px;top:62px;transform:rotate(-8.11deg);color:var(--accent);padding:0;cursor:pointer}.logo-mark:hover{opacity:.8}.logo-mark:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}.logo-name{display:block;padding-right:40px;color:var(--ink-2)}.logo-name,.logo-nav{font-size:14px;line-height:normal}.logo-nav{margin-top:61px;display:flex;align-items:flex-end;gap:38px}.logo-nav ul{display:flex;flex-direction:column;gap:8px}.logo-places{min-width:49px}.logo-account{color:color-mix(in srgb,var(--ink) 60%,transparent)}.logo-nav a:hover,.logo-nav button:hover,.status-pill{color:var(--accent)}.status-pill{display:flex;align-items:center;gap:8px;font-size:14px;line-height:1}.status-pill i{position:relative;width:36px;height:14px;border:1px solid color-mix(in srgb,var(--accent) 10%,transparent);border-radius:4px;background:color-mix(in srgb,var(--accent) 30%,transparent)}.status-pill i:before{content:"";position:absolute;left:-1px;top:-1px;width:14px;height:14px;border-radius:4px 0 0 4px;background:var(--accent)}.bean-name a:hover{color:var(--accent)}.bean-name{font-size:60px;font-weight:500;line-height:1;letter-spacing:-.01em;text-wrap:balance}.bean-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:14px}.bean-meta .muted{color:var(--ink-2)}.bean-meta .bean-edit{margin-left:auto;margin-top:0;color:var(--ink-2)}.nsec{position:relative;gap:12px;padding:24px 0 32px 24px;border-top:1px solid var(--rule);line-height:1.2}.nsec,.nsec-label{display:flex;font-size:14px}.nsec-label{align-items:center;gap:8px;width:120px;height:20px;flex:none;color:var(--accent);text-align:left}.nsec-label:hover{opacity:.8}.nsec-body{position:relative;flex:1 1;min-width:0;padding-top:2px;padding-right:32px}.nsec.is-closed .nsec-body{max-height:60px;overflow:hidden;padding-bottom:8px}.nsec.is-closed .nsec-body:after{content:"";position:absolute;inset:auto 0 0 0;height:70px;background:linear-gradient(to top,var(--card),color-mix(in srgb,var(--card) 0%,transparent));pointer-events:none}.nsec.is-closed{padding-bottom:0}.nsec .facts{gap:0}.nsec .fact{display:flex;gap:24px;padding:12px 0;border:0;border-bottom:1px solid var(--rule);font-size:14px}.nsec .fact:first-child{padding-top:0}.nsec .fact dt{width:110px;flex:none;color:var(--ink-2)}.ncard .f{border:0;text-decoration:underline;-webkit-text-decoration-color:var(--track);text-decoration-color:var(--track);text-decoration-thickness:8.5%;text-underline-offset:3px}.ncard .f:hover{color:var(--accent);-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.reveal:not([data-open]) .is-extra{display:none}.more{display:flex;align-items:center;gap:8px;padding:12px 0;font-size:14px;color:var(--accent)}.more:hover{opacity:.8}.verdict{font-size:21px;line-height:1.4;letter-spacing:.01em;white-space:pre-wrap}.profile-note{margin-bottom:16px}.nsec .bars{gap:8px}.nsec .bar-row{grid-template-columns:85px 1fr 24px;gap:8px;font-size:14px}.ncard .bar-track{height:12px;border-radius:2px;background:var(--track)}.ncard .bar-fill{border-radius:0;background:var(--ink)}.nsec .bars-cap{font-size:14px;color:var(--ink-2);margin-top:8px}.ncard .figures{gap:32px}.ncard .figures>div{gap:16px}.ncard .fig{font-size:60px;font-weight:500;line-height:1;letter-spacing:-.01em}.ncard .fig-k{font-size:16px}.ncard .fig-k,.ncard .figures .muted{color:var(--ink-2)}.ncard-part .bar-row{grid-template-columns:60px 1fr 16px;gap:8px;font-size:14px}.ncard-part .bars{gap:8px}.node .rate{background:var(--card);border:1px solid var(--edge-line);border-radius:var(--radius-lg);box-shadow:0 3px 4px rgba(0,0,0,.15),inset 0 2px 2px rgba(255,255,255,.03)}.node .rate-body{padding:24px 24px 8px;gap:16px}.node .rate-msg{padding:0 24px 8px;min-height:0}.node .rate-msg:empty{display:none}.node .rate-submit{background:color-mix(in srgb,var(--ink) 2%,transparent);border-top-color:var(--rule)}.nlog{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;font-size:14px;line-height:1.2}.nlog td,.nlog th{padding:16px 4px;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nlog th{padding-top:0;font-weight:400;color:var(--ink-2)}.nlog td,.nlog th{border-bottom:1px solid var(--rule)}.nlog :is(th,td):first-child{padding-left:24px;width:104px}.nlog :is(th,td):last-child{padding-right:24px;width:104px}.nlog tbody tr:hover{background:none}.ncard .spark-bars{height:12px}.ncard .spark-bars i{background:var(--ink)}.nlog-more{padding:12px 24px}.curve-head{padding:32px 32px 0;gap:10px}.ncard .chart{gap:0;padding-bottom:8px}.ncard .chart-head{padding:0 32px 16px}.ncard .chart-legend{font-size:14px;gap:10px;color:color-mix(in srgb,var(--ink) 60%,transparent)}.ncard .chart-scroll{overflow:visible}.ncard .chart svg{min-width:0}.ncard .grid{stroke:var(--rule)}.ncard .ax,.ncard .band-label{font-size:14px}.ncard .band{fill:var(--accent-wash);stroke:color-mix(in srgb,var(--accent) 10%,transparent)}.ncard .band-label{display:none}.rate-slider input[type=range]{height:20px}.rate-slider{padding-bottom:8px}.rate-slider input[type=range]::-webkit-slider-runnable-track{margin:9px 0;background:linear-gradient(to right,var(--accent) var(--fill,0),var(--track) var(--fill,0))}.rate-slider input[type=range]::-moz-range-track{background:linear-gradient(to right,var(--accent) var(--fill,0),var(--track) var(--fill,0))}.rate-slider input[type=range]::-webkit-slider-thumb{width:38px;height:20px;margin-top:-9px}.rate-slider input[type=range]::-moz-range-thumb{width:38px;height:20px}@media (max-width:760px){.nsec{flex-direction:column;padding-right:24px}.nsec-body{padding-right:0}.nsec .fact{gap:16px}.nsec .fact dt{width:96px}.ncard .chart-scroll,.nlog-wrap{overflow-x:auto}.nlog{min-width:680px}.ncard .chart svg{min-width:640px}.bean-name,.ncard .fig{font-size:44px}.ncard .figures{gap:24px}}.canvas-origin{position:absolute;left:var(--ox);top:var(--oy);width:0;height:0}.ci-layer{display:none}@media (min-width:1440px){.ci-layer{display:contents}}.ci-item{position:absolute;left:calc(var(--ox) + var(--x));top:calc(var(--oy) + var(--y));z-index:4}.ci-at-origin,.ci-drawing{z-index:0}.ci-ink{display:block;overflow:visible;fill:none;stroke:var(--accent);stroke-linecap:round;stroke-linejoin:round}.ci-at-origin{position:absolute;left:var(--ox);top:var(--oy);width:1px;height:1px;pointer-events:none}.ci-surface{position:absolute;inset:0;z-index:5;cursor:crosshair;touch-action:none}.ci-dock{position:fixed;top:40px;right:40px;z-index:10;display:flex;flex-direction:column;align-items:flex-end;gap:8px;width:280px}.morph{position:relative;overflow:hidden;background:var(--card);border:1px solid color-mix(in srgb,var(--ink) 2%,transparent);border-radius:var(--radius-lg);box-shadow:0 3px 4px rgba(0,0,0,.15);transition:width .36s cubic-bezier(.22,1,.36,1),height .36s cubic-bezier(.22,1,.36,1),opacity .2s linear}.morph.is-empty{opacity:0;pointer-events:none;border-width:0}.morph-inner{width:max-content}.morph-inner.is-measured{position:absolute;top:0;right:0}.morph-state{animation:ci-in .24s ease-out .08s both}.ci-toolbar{display:flex;gap:2px;padding:2px}.ci-tool-btn{display:flex;align-items:center;gap:8px;padding:12px 16px 12px 14px;border-radius:8px;font-size:14px;line-height:normal;transition:background-color .12s linear}.ci-tool-btn:focus-visible,.ci-tool-btn:hover{background:color-mix(in srgb,var(--ink) 6%,transparent)}.ci-act img,.ci-icon-btn img,.ci-tool-btn img{display:block}.ci-menu{position:relative;width:278px;overflow:hidden}.ci-tools{height:246px}.ci-notes{height:228px}.ci-menu-title{position:absolute;left:15px;top:13px;width:150px;font-size:14px;line-height:normal;color:color-mix(in srgb,var(--ink) 60%,transparent)}.ci-notes-title{width:90px}.ci-stickers-title{left:44px;width:123px}.ci-icon-btn{position:absolute;top:6px;padding:8px;border-radius:4px;transition:background-color .12s linear;z-index:1}.ci-icon-btn:focus-visible,.ci-icon-btn:hover{background:color-mix(in srgb,var(--ink) 10%,transparent)}.ci-close{left:237px}.ci-back{left:6px}.ci-pick{position:absolute;top:107px;height:169px;padding:0;transition:top .18s cubic-bezier(.22,1,.36,1)}.ci-pick:hover{top:97px}.ci-pick.is-on{top:77px}.ci-pick img{display:block}.ci-tools-fade{position:absolute;left:0;right:-1px;bottom:-2px;height:44px;background:linear-gradient(0deg,rgba(23,23,23,.9),rgba(23,23,23,0));pointer-events:none}.ci-actions{width:100%}.ci-act,.ci-actions{display:flex;gap:4px}.ci-act{flex:1 0;align-items:center;justify-content:center;padding:10px 12px;border-radius:var(--radius-lg);border:1px solid color-mix(in srgb,var(--ink) 2%,transparent);background:var(--card);font-size:14px;line-height:1;filter:drop-shadow(0 3px 2px rgba(0,0,0,.15));transition:background-color .12s linear}.ci-act:hover{background:color-mix(in srgb,var(--ink) 6%,var(--card))}.ci-undo{flex:none;padding:10px}.ci-undo:disabled{opacity:.4;cursor:default}.ci-discard{color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,var(--card));border-color:color-mix(in srgb,var(--danger) 20%,transparent)}.ci-discard:hover{background:color-mix(in srgb,var(--danger) 18%,var(--card))}.ci-delete-icon{display:inline-block;width:16px;height:16px;background:currentColor;-webkit-mask:url(/canvas/icon-delete.svg) center/contain no-repeat;mask:url(/canvas/icon-delete.svg) center/contain no-repeat}.ci-tile{position:absolute;width:72px;height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px 12px 6px;border-radius:var(--radius-lg);border:1px solid color-mix(in srgb,var(--ink) 2%,transparent);font-size:11px;line-height:normal;color:#0a0a0a;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));transform:rotate(var(--r));transition:transform .18s cubic-bezier(.22,1,.36,1)}.ci-tile-sticker:focus-visible,.ci-tile-sticker:hover,.ci-tile:focus-visible,.ci-tile:hover{transform:rotate(var(--r)) translateY(-4px) scale(1.04)}.ci-tile-note{--r:-5.54deg;left:78px;top:61px;background:#dbce18;box-shadow:inset 0 0 10px rgba(0,0,0,.2)}.ci-tile-aa{font-size:24px;line-height:1}.ci-tile-sketch{--r:-12.7deg;left:33px;top:123px;background:#f1f1f0}.ci-tile-diary{--r:10.39deg;left:140px;top:113px;padding:0;overflow:hidden;background:linear-gradient(270deg,#ded9c1 86.5%,#baaf7d)}.ci-tile-diary:before{content:"";position:absolute;left:-1px;top:-1px;width:68px;height:72px;border-radius:11px;background:#27271f}.ci-tile-diary:after{content:"";position:absolute;left:2px;top:-2px;width:4px;height:74px;background:rgba(0,0,0,.25)}.ci-diary-label{position:absolute;left:15px;top:24px;width:41px;height:24px;display:grid;place-items:center;border-radius:4px;background:#f3f2f1;font-size:11px;line-height:1;z-index:1}.ci-diary-label:before{content:"";position:absolute;inset:2px;border:1px solid #5d5c4d;border-radius:2px}.ci-tile-sticker{--r:8.9deg;position:absolute;left:185px;top:73px;padding:0;transform:rotate(var(--r));transition:transform .18s cubic-bezier(.22,1,.36,1)}.ci-sticker-src img,.ci-tile-sticker img{display:block}.ci-sticker-src{position:absolute;padding:0;cursor:-webkit-grab;cursor:grab;touch-action:none}.ci-sticker-src:active{cursor:-webkit-grabbing;cursor:grabbing}.ci-ghost{position:fixed;z-index:20;pointer-events:none;opacity:.9}.ci-status{width:100%;padding:10px 14px;border-radius:var(--radius-lg);background:var(--card);border:1px solid var(--edge-line);font-size:14px;color:var(--ink-2)}.ci-status a{color:var(--accent)}.ci-paper{position:relative;width:280px;height:320px;overflow:hidden;border-radius:var(--radius-lg);border:1px solid color-mix(in srgb,var(--ink) 2%,transparent);filter:drop-shadow(0 3px 2px rgba(0,0,0,.15));font-size:16px;color:rgba(0,0,0,.9)}.ci-paper-title{position:absolute;left:13px;top:13px;right:70px;line-height:normal;color:rgba(0,0,0,.5)}.ci-diary{background:repeating-linear-gradient(180deg,transparent 0 28px,rgba(0,0,0,.1) 28px 29px) 0 50px /100% 270px no-repeat,linear-gradient(270deg,#ded9c1 93.269%,#baaf7d)}.ci-pages{position:absolute;left:256px;top:-1px;display:flex}.ci-pages i{width:14px;height:320px;margin-right:-12px;border-right:1px solid rgba(0,0,0,.2);border-radius:0 12px 12px 0}.ci-pages i:last-child{margin-right:0}.ci-diary .ci-text,.ci-diary textarea{position:absolute;left:16px;right:25px;top:50px;bottom:0;line-height:1.8;color:rgba(0,0,0,.5);overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere}.ci-sticky{background:#dbce18}.ci-sticky .ci-text,.ci-sticky .ci-write{position:absolute;left:13px;right:20px;bottom:15px;max-height:250px;overflow:hidden;line-height:normal;white-space:pre-wrap;overflow-wrap:anywhere}.ci-sticky .ci-write{top:50px;display:flex;flex-direction:column;justify-content:flex-end}.ci-sticky textarea{field-sizing:content;max-height:100%;color:rgba(0,0,0,.9)}.ci-sticky textarea::placeholder{color:rgba(0,0,0,.9)}.ci-paper textarea{width:100%;padding:0;border:0;border-radius:0;background:transparent;font:inherit;resize:none;outline:none}.ci-sketch{background:#f1f1f0;border-radius:2px}.ci-sketch.is-editing{background:var(--card);border-radius:var(--radius-lg)}.ci-sketch.is-editing .ci-paper-title{color:var(--ink-2)}.ci-paper .ci-ink,.ci-sketchpad{position:absolute;inset:0}.ci-sketchpad{cursor:crosshair;touch-action:none}.ci-grip{position:absolute;top:15px;right:15px;display:grid;grid-template-columns:repeat(3,3px);grid-auto-rows:3px;grid-gap:5px;gap:5px;padding:0;cursor:-webkit-grab;cursor:grab;touch-action:none;z-index:1}.ci-grip:active{cursor:-webkit-grabbing;cursor:grabbing}.ci-grip i{display:block;border-radius:1px;background:rgba(0,0,0,.5)}.ci-diary .ci-grip{right:24px}.ci-grip-dark i,.ci-sketch.is-editing .ci-grip i{background:var(--ink-2)}.ci-grip-dark{position:static;padding:6px}.ci-editor{z-index:7;display:flex;flex-direction:column;gap:4px;width:280px}.ci-controls{position:absolute;top:8px;right:44px;opacity:0;transition:opacity .12s linear .3s;z-index:2}.ci-item:focus-within .ci-controls,.ci-item:hover .ci-controls{opacity:1;transition-delay:0s}.ci-del{display:grid;place-items:center;width:28px;height:28px;border-radius:6px;color:rgba(0,0,0,.5);background:rgba(0,0,0,.06)}.ci-del:focus-visible,.ci-del:hover{color:#b91c1c;background:rgba(0,0,0,.1)}.ci-sticker img.is-movable{cursor:-webkit-grab;cursor:grab;touch-action:none}.ci-sticker .ci-controls{top:-10px;right:-10px}.ci-float .ci-del,.ci-sticker .ci-del{color:var(--ink-2);background:var(--card);border:1px solid var(--edge-line)}.ci-float .ci-del:hover,.ci-sticker .ci-del:hover{color:var(--danger)}.ci-item.ci-drawing{pointer-events:none;z-index:0}.ci-drawing.is-managed path{pointer-events:visibleStroke}.ci-float{top:-40px;right:0;display:flex;align-items:center;gap:2px;padding:2px;border-radius:8px;background:var(--card);pointer-events:auto}.ci-drawing.is-managed:hover .ci-float,.ci-float:focus-within,.ci-float:hover{opacity:1;transition-delay:0s}@keyframes ci-in{0%{opacity:0;transform:translateY(-4px)}}@keyframes ci-rise{0%{opacity:0;transform:translateY(-8px)}}@keyframes ci-pop{0%{opacity:0;transform:rotate(var(--r,0deg)) scale(.8)}}@keyframes ci-place{0%{opacity:0;transform:scale(.94)}}@keyframes ci-stick{0%{opacity:0;transform:scale(1.35)}60%{opacity:1;transform:scale(.94)}}@keyframes ci-out{to{opacity:0;transform:scale(.96)}}@keyframes ci-fade{0%{opacity:0}}@keyframes ci-wire{0%{stroke-dashoffset:1}}@keyframes ci-grow-x{0%{transform:scaleX(0)}}@keyframes ci-grow-y{0%{transform:scaleY(0)}}@keyframes ci-port{0%{opacity:0;transform:scale(0)}}.ci-actions{animation:ci-rise .28s cubic-bezier(.22,1,.36,1) .12s both}.ci-status{animation:ci-rise .24s cubic-bezier(.22,1,.36,1) both}.ci-menu-title{animation:ci-fade .2s linear both}.ci-pick{animation:ci-rise .34s cubic-bezier(.22,1,.36,1) both}.ci-pick:nth-of-type(2){animation-delay:.1s}.ci-pick:nth-of-type(3){animation-delay:.15s}.ci-pick:nth-of-type(4){animation-delay:.2s}.ci-sticker-src,.ci-tile,.ci-tile-sticker{animation:ci-pop .32s cubic-bezier(.34,1.56,.64,1) both}.ci-tile-note{animation-delay:.1s}.ci-tile-sketch{animation-delay:.14s}.ci-tile-diary{animation-delay:.18s}.ci-tile-sticker{animation-delay:.22s}.ci-sticker-src:nth-of-type(2){animation-delay:.1s}.ci-sticker-src:nth-of-type(3){animation-delay:.14s}.ci-sticker-src:nth-of-type(4){animation-delay:.18s}.ci-sticker-src:nth-of-type(5){animation-delay:.22s}.ci-sticker-src:nth-of-type(6){animation-delay:.26s}.ci-sticker-src{--r:0deg}.ci-item{animation:ci-place .26s cubic-bezier(.22,1,.36,1) both}.ci-item.ci-drawing{animation:ci-fade .3s linear both}.ci-item.ci-sticker{animation:ci-stick .38s cubic-bezier(.22,1,.36,1) both}.ci-at-origin.is-leaving,.ci-item.is-leaving{animation:ci-out .18s ease-in forwards}.canvas .node .ncard,.canvas .node .rate{transition:filter .15s linear}.canvas .node.is-active .ncard,.canvas .node.is-active .rate{filter:drop-shadow(0 14px 20px rgba(0,0,0,.4))}.canvas-links path{stroke-dasharray:1;animation:ci-wire .9s cubic-bezier(.65,0,.35,1) .35s both}.port{animation:ci-port .3s cubic-bezier(.34,1.56,.64,1) .2s both}.ncard .bar-fill{transform-origin:left;animation:ci-grow-x .7s cubic-bezier(.22,1,.36,1) .2s both}.ncard .bar-row:nth-child(2) .bar-fill{animation-delay:.26s}.ncard .bar-row:nth-child(3) .bar-fill{animation-delay:.32s}.ncard .bar-row:nth-child(4) .bar-fill{animation-delay:.38s}.ncard .bar-row:nth-child(5) .bar-fill{animation-delay:.44s}.ncard .spark-bars i{transform-origin:bottom;animation:ci-grow-y .5s cubic-bezier(.22,1,.36,1) .3s both}.ncard .series{stroke-dasharray:1;animation:ci-wire 1.1s cubic-bezier(.65,0,.35,1) .3s both}.ncard .pt,.ncard .pt-label,.ncard .pt-ring{animation:ci-fade .3s linear 1.1s both}:root{interpolate-size:allow-keywords}.nsec-body{height:auto;overflow:clip;overflow-clip-margin:4px;transition:height .32s cubic-bezier(.22,1,.36,1)}.nsec.is-closed .nsec-body{height:60px;max-height:none}.nsec-chevron{transform:rotate(90deg);transition:transform .22s cubic-bezier(.22,1,.36,1)}.nsec.is-closed .nsec-chevron{transform:none}.nsec-body:after{transition:opacity .2s linear}.reveal[data-open] .is-extra{animation:ci-in .24s ease-out both}.logo-closed:not([hidden]),.logo-open:not([hidden]){animation:ci-fade .18s linear both}.logo-open:not([hidden]) .logo-nav{animation:ci-in .24s ease-out .05s both}.recipe-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.recipe-score{font-size:40px;font-weight:500;line-height:1;color:var(--accent);margin:-6px 28px -10px 0}.recipe-bag{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:14px}.recipe-bag>span:first-child{font-size:21px;line-height:1.2}.recipe-log{margin-left:auto;color:var(--accent)}.recipe-log:hover{opacity:.8}.recipe{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px 12px;gap:14px 12px;margin:0}.recipe dt{color:var(--ink-2);font-size:14px}.recipe dd{margin:4px 0 0;font-size:21px;line-height:1.1}.recipe-grind{padding-top:14px;border-top:1px solid var(--rule)}.recipe-grind+.recipe-grind{padding-top:0;border-top:0;margin-top:-6px}.recipe-method{margin-top:-10px}.recipe-method,.recipe-note{color:var(--ink-2);line-height:1.4}.recipe-note{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ex-adds{display:flex;flex-wrap:wrap;gap:6px}.ex-add{padding:6px 10px;border-radius:8px;border:1px solid var(--rule);background:color-mix(in srgb,var(--ink) 3%,transparent);font-size:14px;line-height:1;transition:border-color .12s linear,color .12s linear}.ex-add:before{content:"+ ";color:var(--ink-2)}.ex-add:focus-visible,.ex-add:hover{border-color:var(--accent);color:var(--accent)}.ex-rules{font-size:14px;color:var(--ink-2);line-height:1.4}.ex-count{display:flex;align-items:baseline;gap:10px}.ex-count .fig{font-size:60px;font-weight:500;line-height:1;color:var(--accent)}.ex-switch{display:flex;align-items:center;gap:8px;font-size:14px;line-height:1;color:var(--ink-2);align-self:flex-start}.ex-switch i{position:relative;width:36px;height:14px;border-radius:4px;background:var(--track);border:1px solid var(--rule);transition:background-color .18s linear}.ex-switch i:before{content:"";position:absolute;left:-1px;top:-1px;width:14px;height:14px;border-radius:4px;background:var(--ink-2);transition:transform .22s cubic-bezier(.22,1,.36,1),background-color .18s linear}.ex-switch.is-on{color:var(--accent)}.ex-switch.is-on i{background:color-mix(in srgb,var(--accent) 30%,transparent);border-color:color-mix(in srgb,var(--accent) 10%,transparent)}.ex-switch.is-on i:before{transform:translateX(22px);background:var(--accent)}.ex-filter-head{flex-direction:row;align-items:center;justify-content:space-between;padding-bottom:16px}.ex-remove{margin-right:30px;padding:4px;border-radius:4px}.ex-remove img{display:block}.ex-remove:focus-visible,.ex-remove:hover{background:color-mix(in srgb,var(--ink) 10%,transparent)}.ex-filter-body{gap:12px}.ex-foot{display:flex;justify-content:space-between;gap:8px;font-size:14px;color:var(--ink-2)}.ex-foot strong{color:var(--ink);font-weight:500}.ex-chips-wrap{display:flex;flex-direction:column;gap:8px}.ex-search{padding:6px 10px;font-size:14px;background:transparent;border-radius:8px}.ex-chips{display:flex;flex-wrap:wrap;gap:6px;max-height:176px;overflow-y:auto;padding:1px}.ex-chip{display:inline-flex;align-items:baseline;gap:6px;padding:5px 9px;border-radius:8px;border:1px solid var(--rule);font-size:14px;line-height:1.1;transition:border-color .12s linear,background-color .12s linear,color .12s linear}.ex-chip:hover{border-color:var(--ink-3)}.ex-chip-n{font-size:12px;color:var(--ink-2)}.ex-chip.is-on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.ex-chip.is-on,.ex-chip.is-on .ex-chip-n{color:var(--accent)}.ex-range{display:flex;flex-direction:column;gap:8px}.ex-range-read{font-size:21px;line-height:1.1}.ex-dual{position:relative;height:20px}.ex-dual-track{position:absolute;left:0;right:0;top:9px;height:2px;background:linear-gradient(to right,var(--track) var(--lo),var(--accent) var(--lo) var(--hi),var(--track) var(--hi))}.ex-dual input[type=range]{position:absolute;inset:0;height:20px;pointer-events:none}.ex-dual input[type=range]::-webkit-slider-runnable-track{background:none;height:20px}.ex-dual input[type=range]::-moz-range-track{background:none}.ex-dual input[type=range]::-webkit-slider-thumb{pointer-events:auto;width:20px;height:20px;margin-top:0;border-radius:50%;background:var(--ink)}.ex-dual input[type=range]::-moz-range-thumb{pointer-events:auto;width:20px;height:20px;border-radius:50%;background:var(--ink)}.ex-hint{font-size:14px;color:var(--ink-2)}.ex-port{padding:0;cursor:crosshair}.ex-port:before{content:"";position:absolute;inset:-8px;border-radius:50%}.ex-port:focus-visible,.ex-port:hover{box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 25%,transparent)}.ex-in{background:var(--card);border:2px solid var(--accent)}.ex-in.is-wired{background:var(--accent);cursor:pointer}.ex-wire{position:absolute;left:var(--ox);top:var(--oy);width:1px;height:1px;overflow:visible;pointer-events:none;z-index:3;fill:none;stroke:var(--accent);stroke-width:2;stroke-dasharray:6 6}.ex-empty{position:absolute;left:calc(var(--ox) + 120px);top:calc(var(--oy) + var(--y));font-size:21px;color:var(--ink-2)}@media (max-width:1439px){.ex-empty{position:static;padding:16px}}.ex-filter>.port-left,.ex-filter>.port-right,.ex-hub>.port-left{top:calc(50% - 8px)}.canvas.is-panning{cursor:-webkit-grabbing;cursor:grabbing;-webkit-user-select:none;-moz-user-select:none;user-select:none}.canvas .ci-item,.canvas .node{cursor:auto}.ex-root{display:contents}.ex-dock{position:fixed;left:50%;bottom:32px;z-index:10;display:flex;gap:4px;transform:translateX(-50%);animation:ci-rise .3s cubic-bezier(.22,1,.36,1) .3s both}.ex-addnode,.ex-clear{display:flex;align-items:center;gap:8px;padding:12px 18px 12px 14px;border-radius:var(--radius-lg);background:var(--card);border:1px solid color-mix(in srgb,var(--ink) 4%,transparent);box-shadow:0 6px 16px rgba(0,0,0,.35),inset 0 2px 2px rgba(255,255,255,.03);font-size:16px;line-height:1;transition:background-color .12s linear,transform .12s ease-out}.ex-addnode img{display:block}.ex-addnode:hover,.ex-clear:hover{background:color-mix(in srgb,var(--ink) 6%,var(--card))}.ex-addnode:active{transform:scale(.97)}.ex-clear{padding:12px 16px;color:var(--ink-2)}.ex-type{width:auto;max-width:200px;padding:2px 22px 2px 0;border:0;border-radius:0;background:transparent url(/canvas/icon-closed.svg) 100%/16px no-repeat;font-size:14px;color:var(--accent);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.ex-type:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ex-type option{color:var(--ink);background:var(--card)}.ex-filter.is-new{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 40%,transparent);border-radius:var(--radius-lg)}.ex-filter.is-new .ex-adds{gap:6px}.ex-root .canvas{padding-bottom:96px}.grain-top{display:flex;align-items:baseline;gap:12px}.ncard .table-wrap{margin:-8px 0}.ncard table.grains{min-width:0;font-size:14px}.ncard table.grains thead th{color:var(--ink-2);font-weight:400;font-size:14px;border-bottom:1px solid var(--rule)}.ncard table.grains tbody td{border-bottom:1px solid var(--rule);height:48px}.ncard table.grains tbody tr:last-child td{border-bottom:0}.ncard table.grains .t-name{font-weight:500}.ncard table.grains .t-name a:hover{opacity:1;color:var(--accent)}.ncard table.grains .dot{background:var(--accent)}.ncard table.grains .t-public,.ncard table.grains .t-score{font-weight:500;font-size:14px}.about-lede{font-size:20px;line-height:1.35}.gear-rows{display:flex;flex-direction:column;gap:12px}.gear-rows li{display:flex;justify-content:space-between;gap:16px}.auth-card .stack{margin-top:0}.auth-card .auth-alt{margin-top:8px}.admin-page{padding:16px 16px 96px}@media (min-width:761px){.admin-page{padding-top:261px}}.admin-page .admin{max-width:1280px;margin:0 auto;padding:0;align-items:start}.admin-page .admin-narrow{max-width:660px;margin:0 auto;padding:24px}.admin-page .panel{padding:24px}.admin-page .admin-narrow,.admin-page .panel{background:var(--card);border:1px solid var(--edge-line);border-radius:var(--radius-lg);box-shadow:inset 0 2px 2px rgba(255,255,255,.03);animation:ci-rise .3s cubic-bezier(.22,1,.36,1) both}.admin-page .panel-title{font-size:14px;color:var(--accent);border-bottom-color:var(--rule)}.admin-page .page-title{font-size:14px;font-weight:400;letter-spacing:0;line-height:1;color:var(--accent)}.admin-page .rows li:last-child{border-bottom:0}.nlog-all :is(th,td):nth-child(2){width:28%}.nlog-all tbody tr:last-child td{border-bottom:0}.fcard-clear{margin-left:auto;margin-right:32px;font-size:14px}.fgroup{gap:12px;padding-top:16px;padding-bottom:16px}.fgroup summary{display:flex;align-items:center;gap:4px;cursor:pointer;list-style:none}.fgroup summary::-webkit-details-marker{display:none}.fgroup-label{color:var(--accent)}.fgroup-on{margin-left:auto;color:var(--ink-2)}.fgroup .nsec-chevron{transform:none}.fgroup[open] .nsec-chevron{transform:rotate(90deg)}.fgroup summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.sheet{position:fixed;top:40px;right:40px;bottom:40px;width:512px;z-index:20;display:flex;flex-direction:column;overflow:hidden;background:var(--sheet);border:1px solid var(--rule);border-radius:32px;box-shadow:0 24px 48px rgba(0,0,0,.35);animation:sheet-in .36s cubic-bezier(.22,1,.36,1) both}@keyframes sheet-in{0%{opacity:0;transform:translateX(32px)}}.sheet-scroll{flex:1 1;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain}.sheet-scroll>*{flex:none}.sheet-body{display:contents}.sheet-head{display:flex;flex-direction:column;gap:4px;padding:24px 88px 24px 24px}.sheet-head,.sheet-head h1{font-size:14px;line-height:1.2}.sheet-head h1{font-weight:400;color:var(--ink)}.sheet-head p{color:var(--ink-2);max-width:320px}.sheet-sec{display:flex;flex-direction:column;gap:24px;padding:24px 24px 32px;border-top:1px solid var(--rule)}.sheet-sec.is-first{padding-top:24px;padding-bottom:24px;border-top:0}.sheet-sec-head{display:flex;flex-direction:column;gap:4px;font-size:14px;line-height:1.2}.sheet-sec-head h2{font-size:14px;font-weight:400;color:var(--ink-2)}.sheet-sec-head p{color:var(--ink-3)}.sheet-sec-row{flex-direction:row;justify-content:space-between;align-items:baseline}.sheet-fields{display:flex;flex-direction:column;gap:16px}.sheet-sec .rows{margin-top:-12px}.sheet-nav{position:absolute;inset:0 0 auto 0;height:24px;pointer-events:none;background:linear-gradient(to bottom,color-mix(in srgb,var(--sheet) 90%,transparent),transparent)}.sheet-nav .sheet-btn{position:absolute;top:24px;right:23px;pointer-events:auto}.sheet-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;padding:0 16px;font-size:14px;line-height:1;white-space:nowrap;color:var(--ink);background:color-mix(in srgb,var(--ink) 2%,transparent);border:1px solid var(--rule);border-radius:var(--radius-lg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background-color .12s linear,opacity .12s linear,transform .12s ease-out}.sheet-btn:hover{background:var(--rule)}.sheet-btn:active{transform:scale(.97)}.sheet-btn:disabled{opacity:.5;cursor:default}.sheet-icon{padding:0 12px}.sheet-btn.is-primary{color:var(--ground);background:var(--accent);border-color:transparent;box-shadow:0 2px 12px color-mix(in srgb,var(--accent) 10%,transparent)}.sheet-btn.is-primary:hover{opacity:.88}.sheet-btn.is-critical{padding-left:12px;color:var(--danger);background:color-mix(in srgb,var(--danger) 2%,transparent);border-color:color-mix(in srgb,var(--danger) 10%,transparent)}.sheet-btn.is-critical:hover{background:color-mix(in srgb,var(--danger) 10%,transparent)}.sheet-delete{color:var(--ink-2)}.sheet-delete:hover{color:var(--danger)}.icon-delete{display:block;width:16px;height:16px;background:currentColor;-webkit-mask:url(/canvas/icon-delete-16.svg) center/16px no-repeat;mask:url(/canvas/icon-delete-16.svg) center/16px no-repeat}.sheet-foot{position:-webkit-sticky;position:sticky;bottom:0;z-index:1;justify-content:space-between;align-items:flex-start;margin-top:auto;padding:24px;background:linear-gradient(to top,color-mix(in srgb,var(--sheet) 90%,transparent) 50%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.sheet-foot,.sheet-foot-group{display:flex;gap:8px}.sheet-foot:not(.has-left) .sheet-foot-group{display:contents}.sheet-foot .is-primary{margin-left:auto}.sheet-dialog{position:absolute;inset:0;z-index:3;justify-content:flex-end;padding:24px;background:color-mix(in srgb,var(--sheet) 90%,transparent);animation:ci-in .2s ease-out both}.sheet-dialog,.sheet-dialog-card{display:flex;flex-direction:column}.sheet-dialog-card{background:var(--sheet);border-top:1px solid var(--rule);border-radius:16px;animation:ci-rise .28s cubic-bezier(.22,1,.36,1) both}.sheet-dialog-text{display:flex;flex-direction:column;gap:4px;padding:24px;font-size:14px;line-height:1.2}.sheet-dialog-text p+p{color:var(--ink-2);max-width:320px}.sheet-dialog-foot{display:flex;justify-content:space-between;padding:16px 24px 24px}body:has(.sheet) :is(.ex-dock,.ci-dock){display:none}@media (max-width:760px){.sheet{top:120px;right:0;bottom:0;left:0;width:auto;border-bottom:0;border-radius:32px 32px 0 0;animation-name:sheet-up}@keyframes sheet-up{0%{opacity:0;transform:translateY(48px)}}}@media (prefers-reduced-motion:reduce){.sheet,.sheet-dialog,.sheet-dialog-card{animation:none}}.ci-log-list{display:flex;flex-direction:column;gap:2px;padding:46px 4px 4px}.ci-log-item{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:12px;border-radius:8px;font-size:14px;line-height:1;text-align:left;transition:background-color .12s linear,opacity .12s linear;animation:ci-in .24s ease-out both}.ci-log-item:nth-child(2){animation-delay:.04s}.ci-log-item:nth-child(3){animation-delay:.08s}.ci-log-item:focus-visible,.ci-log-item:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 6%,transparent)}.ci-log-hint{color:var(--ink-2)}.ci-log-item:disabled{cursor:default}.ci-log-item:disabled:not(.is-opening){opacity:.4}.ci-log-item.is-opening{background:color-mix(in srgb,var(--ink) 6%,transparent)}.sheet.is-growing{animation:none}.sheet.is-growing>*{animation:ci-fade .24s linear .2s both}.sheet.is-folding>*{opacity:0;transition:opacity .12s linear}@media (min-width:1440px){.ex-addnode{display:none}}.fpick{position:relative}.fpick-box{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:36px;padding:0 10px;font-size:14px;line-height:1;text-align:left;color:var(--ink);background:color-mix(in srgb,var(--ink) 2%,transparent);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:0 2px 3px rgba(10,10,10,.05);cursor:pointer;transition:border-color .12s linear}.fpick-box:hover,.fpick-box[aria-expanded=true]{border-color:color-mix(in srgb,var(--ink) 10%,transparent)}.fpick-box:focus-visible{outline:none;border:2px solid var(--ink-2);padding:0 9px}.fpick-box.has-chips{padding-left:4px}.fpick-box img{flex:none}.fpick-text{flex:1 1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.fpick-text.is-placeholder{color:var(--ink-2)}.fpick.is-error .fpick-box{border-color:color-mix(in srgb,var(--danger) 50%,transparent)}.fpick-error{color:var(--danger);font-size:14px;line-height:1}.fpick-req{position:absolute;left:12px;top:40px;width:1px;height:1px;padding:0;border:0;opacity:0;pointer-events:none}.fpick-panel{position:absolute;left:0;right:0;top:-8px;z-index:5;display:flex;flex-direction:column;background:var(--sheet);background-image:linear-gradient(color-mix(in srgb,var(--ink) 2%,transparent),color-mix(in srgb,var(--ink) 2%,transparent));border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:0 2px 6px rgba(10,10,10,.1),0 12px 32px rgba(0,0,0,.35);overflow:hidden;animation:fpick-in .16s ease-out both}.fpick-panel.has-search{top:22px}@keyframes fpick-in{0%{opacity:0;transform:translateY(-4px)}}.fpick-search{height:auto;padding:10px;border:0;border-bottom:1px solid var(--rule);border-radius:0;background:none;box-shadow:none}.fpick-search:focus{border-bottom-color:var(--rule)}.fpick-list{display:flex;flex-direction:column;gap:2px;padding:4px;max-height:220px;overflow-y:auto;outline:none}.fpick-item{display:flex;align-items:center;gap:8px;min-height:28px;padding:6px;border-radius:8px;font-size:14px;line-height:1;color:var(--ink-2);cursor:pointer}.fpick-item.is-active{background:color-mix(in srgb,var(--ink) 2%,transparent);color:var(--ink)}.fpick-item.is-on{color:var(--ink)}.fpick-label,.fpick-new{flex:1 1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.fpick-new{color:var(--ink-2)}.fpick-new b{font-weight:400;color:var(--ink)}.fpick-empty{padding:6px;font-size:14px;color:var(--ink-2)}.fchips{display:flex;gap:2px;min-width:0}.fchip{display:inline-flex;align-items:center;gap:4px;height:28px;max-width:150px;padding:6px;border-radius:8px;background:color-mix(in srgb,var(--ink) 2%,transparent);font-size:14px;line-height:1;color:var(--ink);white-space:nowrap}.fchip-text{min-width:0;overflow:hidden;text-overflow:ellipsis}.fchip-x{display:grid;place-items:center;flex:none;border-radius:4px}.fchip-x:hover{background:var(--rule)}.fchip-more{padding:6px 8px;gap:2px}.fdate-icon{width:16px;height:16px;flex:none;background:url(/canvas/icon-calendar.svg) 50%/16px no-repeat}.fpick-box:hover .fdate-icon,.fpick-box[aria-expanded=true] .fdate-icon{background-image:url(/canvas/icon-calendar-on.svg)}.fdate-panel{top:calc(100% + 4px);right:auto;width:245px}.fdate-month{display:flex;align-items:center;gap:8px;padding:4px;border-bottom:1px solid var(--rule);font-size:14px;line-height:1}.fdate-month span{flex:1 1;text-align:center}.fdate-nav{display:grid;place-items:center;width:32px;height:32px;border-radius:8px}.fdate-nav:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.fdate-grid{display:grid;grid-template-columns:repeat(7,32px);grid-gap:2px;gap:2px;padding:4px}.fdate-day,.fdate-wd{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;font-size:14px;line-height:1}.fdate-wd{color:var(--ink-2)}.fdate-day{color:var(--ink);transition:background-color .1s linear}.fdate-day.is-off{color:var(--ink-2)}.fdate-day:focus-visible,.fdate-day:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 6%,transparent);outline:none}.fdate-day.is-on{background:var(--ink);color:var(--ground)}.fdate-day:disabled{color:var(--ink-3);cursor:default}@media (prefers-reduced-motion:reduce){.fpick-panel{animation:none}}.fpick-panel.is-up{top:auto;bottom:-8px}.fdate-panel.is-up{bottom:calc(100% - 18px)}.canvas-plane{display:contents}@media (min-width:1440px){.canvas-plane{display:block}}.zoom-dock{position:fixed;right:40px;bottom:40px;z-index:10;display:none;align-items:center;gap:2px;padding:2px;background:var(--card);border:1px solid color-mix(in srgb,var(--ink) 2%,transparent);border-radius:var(--radius-lg);box-shadow:0 3px 4px rgba(0,0,0,.15);animation:ci-rise .3s cubic-bezier(.22,1,.36,1) .3s both}@media (min-width:1440px){.zoom-dock{display:flex}}.zoom-btn,.zoom-level{display:grid;place-items:center;height:40px;border-radius:8px;color:var(--ink-2);transition:background-color .12s linear,color .12s linear}.zoom-btn{width:40px}.zoom-btn img,.zoom-btn svg{display:block}.zoom-level{min-width:52px;padding:0 6px;font-size:14px;line-height:1;color:var(--ink)}.zoom-btn:hover:not(:disabled),.zoom-level:hover{background:color-mix(in srgb,var(--ink) 6%,transparent);color:var(--ink)}.zoom-btn:disabled{opacity:.35;cursor:default}body:has(.sheet) .zoom-dock{display:none}@media (max-width:1439px){.ci-dock:not(.is-standalone){display:none}}