@font-face{font-family:'Open Sans';font-style:normal;font-weight:400;src:url('/static/open_sans.woff2') format('woff2');font-display:swap}
:root{color-scheme:light;--bg:#eceff4;--panel:#eceff4;--nav:#eceff4;--text:#2e3440;--muted:#667387;--link:#5e81ac;--line:#d8dee9;--input:#eceff4;--hover:rgba(46,52,64,.06);--popup:#eceff4;--shadow:rgba(0,0,0,.22)}
:root[data-theme=dark]{color-scheme:dark;--bg:#2e3440;--panel:#3b4252;--nav:#3b4252;--text:#eceff4;--muted:#b8c0cf;--link:#81a1c1;--line:#4c566a;--input:#3b4252;--hover:rgba(236,239,244,.06);--popup:#3b4252;--shadow:rgba(0,0,0,.4)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.4 'Open Sans',sans-serif;overflow-y:scroll}a{color:var(--link);text-decoration:none;cursor:pointer}a:hover{text-decoration:underline}button,input,textarea,select{font:inherit}button,.button{display:inline-block;border:0;border-radius:0;background:#5e81ac;color:#eceff4;padding:.45em 1em;cursor:pointer;text-align:center;text-decoration:none;white-space:nowrap}button:hover,.button:hover{background:#81a1c1;text-decoration:none}button.quiet{color:var(--link);background:none;padding:0}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #5e81ac;outline-offset:2px}input,textarea,select{max-width:100%;padding:.4em .5em;border:1px solid var(--line);border-radius:0;background:var(--input);color:var(--text);outline:none}input:focus,textarea:focus,select:focus{border-color:#5e81ac;box-shadow:0 0 0 1px #5e81ac}textarea{resize:vertical}
#top-navigation{display:flex;align-items:center;justify-content:space-between;background:var(--nav);min-height:2.3em;padding:0;font-size:1em}#top-navigation nav,.identity{display:flex;align-items:center;flex-wrap:wrap;gap:0}#top-navigation a,.identity button{display:block;padding:0 1.25em;line-height:2.3em;color:var(--link)}:root[data-theme=dark] #top-navigation a,:root[data-theme=dark] .identity button{color:#e5e9f0}#top-navigation a:hover,.identity button:hover{background:var(--hover);text-decoration:none}.identity{margin-left:auto;font-size:.9em}.identity form{margin:0}body:has(main[data-view=posts]) nav a[href='/posts'],body:has(main[data-view=tags]) nav a[href='/tags'],body:has(main[data-view=pools]) nav a[href='/pools'],body:has(main[data-view=users]) nav a[href='/users']{background:var(--hover);color:var(--text)!important}
main{padding:1.5em;min-height:90vh;width:100%;margin:0 auto}h1,h2,h3{font-weight:400;line-height:1.4;letter-spacing:0;margin:0 0 1em}h1{font-size:2em}h2{font-size:1.5em}h3{font-size:1.1em;margin-top:1.5em;margin-bottom:.5em}.heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5em;gap:1em}.heading h1{margin:0}.eyebrow{display:none}.count,.muted{color:var(--muted)}.count{font-size:.7em;margin-left:.5em}.post-list-header{display:flex;gap:1em;align-items:flex-start;flex-wrap:wrap;margin-bottom:1em;position:relative}.search{display:flex;align-items:stretch;gap:.5em;margin:0;max-width:100%;width:38em}.search input{width:100%;min-width:0}.search button{flex:none}.post-list-header .search{flex:0 1 38em}.help{margin:0;font-size:.9em;line-height:2.3em}.help summary{cursor:pointer;color:var(--link)}.help[open]{max-width:50em}.help p{line-height:1.6;margin:.5em 0}.result-count{margin-left:auto;color:var(--muted);font-size:.85em;line-height:2.5em}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(max(10em,12vw),1fr));gap:.5em;margin:0}.post-card{position:relative;display:block;min-width:0;aspect-ratio:4/3;box-shadow:0 0 0 1px var(--shadow);overflow:hidden}.thumbnail{width:100%;height:100%;background:var(--panel);position:relative;overflow:hidden}.thumbnail img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 30%}.post-card:hover,.post-card:focus-visible{outline:4px solid #5e81ac;outline-offset:-4px}.post-card:hover img{opacity:.9}.card-meta{position:absolute;bottom:.4em;right:.4em;display:flex;align-items:center;gap:.7em;padding:.25em .4em;font-size:.7em;background:rgba(0,0,0,.6);color:#eceff4}.card-meta>span:first-child{opacity:.85}.rating{font-size:.8em}.safe{color:#a3be8c}.sketchy{color:#ebcb8b}.unsafe{color:#bf616a}:root:not([data-theme=dark]) .meta .safe{color:#57772f}:root:not([data-theme=dark]) .meta .sketchy{color:#947017}.media-type{position:absolute;bottom:.4em;left:.4em;background:rgba(0,0,0,.6);color:white;font-size:.7em;padding:.25em .4em}.pagination{display:flex;justify-content:center;align-items:center;gap:1.5em;padding:1em 0;margin-top:.5em}.pagination .button{color:var(--link);background:transparent}.pagination .button:hover{background:var(--hover)}.empty{grid-column:1/-1;text-align:center;padding:4em 1em;color:var(--muted)}
.post-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:1em;font-size:.9em}.post-heading>div{display:flex;gap:2em}.post-layout{display:grid;grid-template-columns:21em minmax(0,1fr);gap:1em}.post-layout aside{line-height:1.6}.post-layout .post-sidebar-content>.search{margin-bottom:1.3em;font-size:.85em}.post-layout .post-sidebar-content>h1{font-size:1.4em;margin-bottom:.6em}.meta{font-size:.9em}.meta p{margin:.6em 0}.badge{display:inline-block;padding:.15em .45em;background:var(--hover);font-size:.85em}.tag-list{list-style:none;padding:0;margin:0;font-size:.9em}.tag-list li{display:flex;align-items:baseline;gap:.5em;padding:.1em 0;overflow-wrap:anywhere}.tag-info{font-size:.75em;color:var(--muted);margin-left:auto}.source{font-size:.85em;white-space:pre-wrap;overflow-wrap:anywhere}.viewer{display:flex;justify-content:flex-start;align-items:flex-start;min-height:0;background:transparent;overflow:hidden}.viewer img,.viewer video{display:block;max-width:100%;max-height:calc(100vh - 8em);object-fit:contain}.viewer a{display:block}.annotated{position:relative;display:inline-block;max-width:100%}.note-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.note-overlay polygon{fill:rgba(255,255,205,.3);stroke:rgba(0,0,0,.2);stroke-width:.0015;pointer-events:all;cursor:help}.note-overlay polygon:hover{fill:rgba(255,255,255,.3);stroke:rgba(62,255,62,.8)}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:1em;margin:.8em 0;font-size:.85em}.toolbar form{display:flex;gap:.3em}.toolbar button{padding:.25em .6em}.selected{box-shadow:inset 0 0 0 2px #a3be8c}.notes article:target{outline:2px solid #5e81ac}.post-body>.panel{background:var(--panel)}
.panel{padding:1.5em;margin:1em 0;background:var(--panel);border:0;border-radius:0}.stack{display:flex;flex-direction:column;gap:1em}.stack label{display:flex;flex-direction:column;gap:.3em}.stack input,.stack textarea,.stack select{width:100%}.stack button{align-self:flex-start}.stack h1,.stack h2{margin-bottom:.2em}.panel>summary{cursor:pointer;color:var(--link)}.panel[open]>summary{margin-bottom:1em}.login{max-width:26em;margin:1em auto}.login .panel{margin:0;padding:1.8em}.login h1{font-size:1.7em}.alert{border:1px solid #bf616a;background:#bf616a33;padding:.5em 1em;margin-bottom:1em}.notice{background:#a3be8c33;padding:.5em 1em;margin-bottom:1em}.comments{margin-top:1.5em}.comment-meta{display:flex;gap:1em;font-size:.85em;color:var(--muted)}.comment-text,.prose{white-space:pre-wrap;overflow-wrap:anywhere}.danger{background:#bf616a;margin-top:.5em}.collections{display:grid;grid-template-columns:repeat(auto-fill,minmax(16em,1fr));gap:1em}.collection{margin:0}.collection p{font-size:.85em;max-height:8em;overflow:hidden}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.9em}th{text-align:left;font-weight:400;color:var(--muted)}td,th{padding:.65em;border-bottom:1px solid var(--line)}.narrow,.upload{max-width:42em;margin-left:auto;margin-right:auto}.dropzone{border:2px dashed var(--line);padding:2em;align-items:center;text-align:center}.dropzone input{border:0}.dropzone span{font-size:.8em}.actions{display:flex;flex-wrap:wrap;gap:.5em}
tag-autocomplete{display:block;position:relative;flex:1;min-width:0}.tag-suggestions{position:absolute;top:100%;left:0;z-index:50;background:var(--popup);border:1px solid var(--line);box-shadow:0 .3em .8em var(--shadow);width:max-content;min-width:100%;max-width:min(42em,calc(100vw - 3em));max-height:22em;overflow:auto;color:var(--text);font-size:.85em}.tag-suggestions[hidden]{display:none}.tag-suggestions [role=option]{display:flex;align-items:baseline;gap:.65em;padding:.45em .6em;cursor:pointer;min-width:0}.tag-suggestions [role=option]:hover,.tag-suggestions [aria-selected=true]{background:#5e81ac;color:#eceff4}.suggestion-name{overflow-wrap:anywhere}.suggestion-alias{font-size:.8em;opacity:.8}.suggestion-count{margin-left:auto;white-space:nowrap}.suggestion-category{font-size:.75em;opacity:.75}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:1200px){body{font-size:15px}#top-navigation a,.identity button{padding:0 .9em}.post-layout{grid-template-columns:19em minmax(0,1fr)}}@media(max-width:1000px){main{padding:1em}#top-navigation{flex-wrap:wrap}.identity{margin-left:auto}.post-list-header{gap:.7em}.post-list-header .search{flex:1 1 28em}.result-count{font-size:.8em}.grid{grid-template-columns:repeat(auto-fill,minmax(10em,1fr))}}@media(max-width:800px){body{font-size:14px}.post-layout{display:flex;flex-direction:column}.post-layout aside{order:2}.post-body{order:1}.tag-list{max-width:32em}.viewer img,.viewer video{max-height:80vh}.post-heading>div{gap:1em}}@media(max-width:500px){#top-navigation{padding:.25em 0}#top-navigation nav{width:100%;justify-content:space-between}#top-navigation a,.identity button{padding:0 .7em}.identity{font-size:.85em}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.search{width:100%}.post-list-header .search{flex-basis:100%}.post-list-header{gap:.5em}.heading h1{font-size:1.6em}.panel{padding:1em}.tag-suggestions{max-width:calc(100vw - 2em)}.suggestion-category{display:none}.post-heading{font-size:.8em}}
@media(min-width:1000px){body:has(main[data-view=posts]){height:100dvh;overflow:hidden;display:flex;flex-direction:column}body:has(main[data-view=posts]) #top-navigation{flex:none}main[data-view=posts]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}main[data-view=posts]>.grid{flex:1;min-height:0;grid-auto-rows:minmax(0,1fr)}main[data-view=posts]>.grid>.post-card{aspect-ratio:auto;min-height:0}main[data-view=posts]>.pagination,main[data-view=posts]>.post-list-header{flex:none}}
.post-layout .post-sidebar-content>.toolbar{line-height:1.4;gap:.5em;font-size:.8em}.post-layout .post-sidebar-content>.panel{padding:.8em;margin-top:1.5em}
/* Progressive-enhancement controls: every form works without JavaScript. */
#top-navigation .nav-account{display:flex;align-items:center;gap:.5em}.avatar{width:1.6em;height:1.6em;object-fit:cover;vertical-align:middle;flex:none;border-radius:2px}.user-avatar{width:4em;height:4em}.profile-avatar{width:8em;height:8em}.profile-heading{justify-content:flex-start}.profile-heading h1{overflow-wrap:anywhere}.settings-panel{max-width:38em;margin:1em auto}.settings-panel .panel{background:var(--panel)}.post-layout aside,.post-body{min-width:0}.pool-link,.pool-link a{overflow-wrap:anywhere;word-break:break-word}.comment-meta{align-items:center;flex-wrap:wrap}.home{max-width:52em;margin:1em auto;text-align:center}.home h1{font-size:2.5em}.home .search{margin:auto;width:100%}.featured{margin:2em auto}.featured img{max-width:100%;max-height:45vh;width:auto}.featured h2{font-size:1.2em}.home-stats{margin-top:2em;color:var(--muted);font-size:.85em}.recent-comments{max-width:75em;margin:auto}.recent-comment{display:grid;grid-template-columns:8em minmax(0,1fr);gap:1.3em}.comment-post img{width:100%;max-height:8em;object-fit:contain}.note-toggle{display:flex;align-items:center;gap:.4em}.post-layout:has(#show-notes:not(:checked)) .note-overlay{display:none}
.search{width:45em;flex-wrap:wrap}.search tag-autocomplete{flex:1 1 10em}.safety-controls{display:flex;align-items:center;gap:.25em;flex:none;margin:0;padding:0;border:0}.safety-controls label{position:relative;display:block;width:1.7em;height:1.7em;cursor:pointer}.safety-controls input[type=checkbox]{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:1}.safety-dot{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border:2px solid currentColor;font-size:.85em;color:transparent!important;background:transparent;opacity:.35}.safety-dot.safe{border-color:#a3be8c}.safety-dot.sketchy{border-color:#ebcb8b}.safety-dot.unsafe{border-color:#bf616a}.safety-controls input:checked+.safety-dot{opacity:1;color:#2e3440!important}.safety-controls input:checked+.safe{background:#a3be8c}.safety-controls input:checked+.sketchy{background:#ebcb8b}.safety-controls input:checked+.unsafe{background:#bf616a}.safety-controls input:focus-visible+.safety-dot{outline:2px solid var(--link);outline-offset:2px}
.grid{grid-template-columns:repeat(7,minmax(0,1fr))}.grid-item{position:relative;min-width:0;min-height:0;aspect-ratio:4/3}.grid-item>.post-card{width:100%;height:100%;aspect-ratio:auto}.bulk-select{display:none;position:absolute;top:.4em;left:.4em;z-index:2;background:var(--panel);padding:.3em;line-height:1}.bulk-select input{width:1.2em;height:1.2em;margin:0;accent-color:var(--accent)}main:has(#mass-tag[open]) .bulk-select{display:block}.grid-item:has(.bulk-select input:checked){outline:3px solid var(--link);outline-offset:-3px}.mass-tag{flex:none;margin-bottom:.7em}.mass-tag summary{color:var(--link);cursor:pointer}.mass-tag form{display:flex;flex-wrap:wrap;align-items:end;gap:.75em;padding:.6em;background:var(--panel)}.mass-tag label{display:flex;flex-direction:column;gap:.3em}.mass-tag label:first-of-type{flex:1;min-width:12em}.mass-tag p{margin:0;flex-basis:100%;font-size:.8em;color:var(--muted)}.mass-tag input[name=tags]{width:100%}.post-layout .post-sidebar-content>.search tag-autocomplete{flex-basis:100%}
@media(min-width:1000px){main[data-view=posts]>.grid>.grid-item{aspect-ratio:auto}main[data-view=posts]>.grid{grid-template-columns:repeat(6,minmax(0,1fr))}main[data-view=posts]>.mass-tag{flex:none}.pagination{flex-wrap:wrap;gap:1em}}
@media(min-width:1400px){main[data-view=posts]>.grid{grid-template-columns:repeat(7,minmax(0,1fr))}}
@media(max-width:999px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pagination{flex-wrap:wrap;gap:.5em}.recent-comment{grid-template-columns:6em minmax(0,1fr)}}
@media(max-width:599px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}#top-navigation nav{justify-content:flex-start}#top-navigation a{padding:0 .7em}.recent-comment{grid-template-columns:4em minmax(0,1fr);gap:.7em}.profile-avatar{width:5em;height:5em}.home h1{font-size:2em}.search tag-autocomplete{flex-basis:100%}}
/* Keep the page count anchored, even at either end of a result set. */
.pagination{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;width:100%;gap:1em;flex:none}.page-position{text-align:center;white-space:nowrap}.page-previous{display:flex;justify-content:flex-end}.page-next{display:flex;justify-content:flex-start;gap:.6em}.pagination .button{padding:.4em .6em}
.post-list-header{align-items:center}.post-list-header>.mass-tag{margin:0;font-size:.9em}.mass-tag summary{list-style:none}.mass-tag summary::-webkit-details-marker{display:none}.mass-tag:not([open]){align-self:center}.mass-tag form,.mass-tag.active{display:flex;align-items:center;gap:.5em;padding:0;background:transparent;flex-wrap:wrap}.mass-tag.active label{display:flex;align-items:center;flex-direction:row;gap:.5em}.mass-tag input[name=tag]{width:13em}.mass-tag.active>button{display:none}.mass-tag.active>label{min-width:0}.tag-flip-form{position:absolute;inset:0;margin:0}.tag-flipper{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;color:#2e3440;display:block;text-align:left}.tag-flipper:hover{background:#a3be8c22;outline:3px solid #a3be8c;outline-offset:-3px}.tag-flipper span{position:absolute;top:.35em;left:.35em;display:grid;place-items:center;width:1.4em;height:1.4em;background:#a3be8c;font-size:1.25em;font-weight:bold;box-shadow:0 1px 3px #0008}.tag-flipper.tagged span{background:#bf616a}.tag-flipper.tagged:hover{background:#bf616a22;outline-color:#bf616a}
note-editor{display:block}.post-image-heading{text-align:center;font-size:1.25em;margin:0 0 1em}.viewer{justify-content:center}.post-sidebar-nav{display:flex;flex-direction:column;gap:.5em;margin-bottom:1em;font-size:.9em}.post-sidebar-nav>div{display:flex;justify-content:space-between}.post-layout aside h2{font-size:1.1em;margin:1.2em 0 .5em}.post-layout aside .panel{padding:.7em}.post-layout aside .relations .grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4em}.post-layout aside .notes{font-size:.85em}.post-layout aside .notes textarea{width:100%}.post-layout aside .note-form .actions{gap:.3em}.post-layout aside .note-form button{white-space:normal}.post-body>.comments{margin-top:1.5em}
.note-editor-tools{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5em;margin-bottom:.7em;font-size:.85em}.note-editor-tools p{flex-basis:100%;text-align:center;margin:0;color:var(--muted)}.note-editor-tools[hidden]{display:none}.note-overlay.editing{pointer-events:all;touch-action:none;cursor:crosshair;display:block!important}.note-overlay .draft{fill:#81a1c144;stroke:#a3be8c;stroke-width:2;vector-effect:non-scaling-stroke;cursor:move}.note-overlay .draft.drawing{cursor:crosshair}.note-overlay .vertex{fill:#eceff4;stroke:#2e3440;stroke-width:1;vector-effect:non-scaling-stroke;cursor:grab}.note-tooltip{position:absolute;z-index:5;left:50%;bottom:.5em;transform:translateX(-50%);max-width:90%;padding:.6em;background:var(--popup);color:var(--text);box-shadow:0 2px 8px var(--shadow);white-space:pre-wrap;pointer-events:none;font-size:.9em}.note-tooltip[hidden]{display:none}.notes .editing-note{outline:2px solid var(--accent)}.note-form [data-draw]{margin-bottom:.5em}.note-overlay a.selected-note{visibility:hidden}
@media(max-width:599px){.pagination{gap:.3em;font-size:.8em}.page-next{flex-wrap:wrap;gap:.2em}.pagination .button{padding:.4em .25em}.mass-tag input[name=tag]{max-width:65vw}.post-sidebar-nav{margin-top:1em}}
/* Partial result pages keep the same slots as a full 42-post page. */
@media(min-width:1000px){main[data-view=posts]>.grid{grid-template-rows:repeat(7,minmax(0,1fr));align-content:start}}
@media(min-width:1400px){main[data-view=posts]>.grid{grid-template-rows:repeat(6,minmax(0,1fr))}}
.pagination{min-height:4.2em}
@media(max-width:599px){.pagination{min-height:6.6em}}
/* Equal side gutters put the post on the page midpoint, independent of the sidebar. */
@media(min-width:801px){.post-layout{grid-template-columns:minmax(14rem,1fr) minmax(0,53.125rem) minmax(14rem,1fr);gap:clamp(1rem,2vw,2rem);align-items:start}.post-layout>aside{width:100%;max-width:21rem;justify-self:end;grid-column:1;grid-row:1}.post-layout>.post-body{grid-column:2;grid-row:1}}
/* Expanding Mass tag keeps its label on the same row and reserves control space. */
@media(min-width:1101px){.post-list-header{flex-wrap:nowrap}.post-list-header>.search{flex:1;min-width:0}.post-list-header>.help,.result-count{flex:none}}
.post-list-header>details.mass-tag{width:26em;max-width:100%;height:2.3em;flex:none}.post-list-header>details.mass-tag>summary{float:left;line-height:2.3em;margin-right:.6em}.post-list-header>details.mass-tag[open]>form{display:flex;flex-wrap:nowrap;height:2.3em;gap:.4em}.post-list-header>details.mass-tag input{width:100%;min-width:0}.post-list-header>details.mass-tag button{flex:none;padding:.4em .6em}
.safety-controls button.safety-dot{width:1.7em;height:1.7em;padding:0;flex:none;font-size:1em;line-height:1;border:2px solid}.safety-controls button.safe{border-color:#a3be8c}.safety-controls button.sketchy{border-color:#ebcb8b}.safety-controls button.unsafe{border-color:#bf616a}.safety-controls button[aria-pressed=true]{opacity:1;color:#2e3440!important}.safety-controls button.safe[aria-pressed=true]{background:#a3be8c}.safety-controls button.sketchy[aria-pressed=true]{background:#ebcb8b}.safety-controls button.unsafe[aria-pressed=true]{background:#bf616a}.safety-controls button[aria-pressed=false]{background:transparent;color:transparent!important}
.sidebar-edit-controls{display:flex;flex-direction:column;gap:.75em;margin-bottom:1em}.sidebar-edit-controls label{display:flex;flex-direction:column;gap:.25em}.sidebar-edit-controls textarea,.sidebar-edit-controls select{width:100%}.tag-add-row,.relation-add-row{display:flex;align-items:center;gap:.3em;margin-bottom:.5em}.tag-add-row input,.relation-add-row input{width:100%;min-width:0}.tag-add-row button,.relation-add-row button{padding:.4em .6em;flex:none}.tag-list .remove-item{flex:none}.remove-item{padding:0 .3em;line-height:1.4;background:transparent;color:var(--heart);font-size:1em}.remove-item:hover{background:var(--hover);color:var(--heart)}.related-item{position:relative;min-width:0}.related-item>.post-card{width:100%}.related-item>.remove-item{position:absolute;top:0;right:0;background:var(--panel);font-size:1.2em}.post-layout aside .notes{font-size:1em}.post-layout aside details.sidebar-disclosure{padding:.7em;margin:.7em 0;background:var(--panel);font-size:1em}.sidebar-disclosure>summary{font-size:1em;color:var(--link);cursor:pointer}.sidebar-disclosure[open]>summary{margin-bottom:.7em}.notes-enhanced .note-coordinates,.notes-enhanced [data-draw]{display:none}.post-layout aside .notes article .comment-text{font-size:.9em}.notes .note-form [name=text]{min-height:8em}.note-editor-tools{font-size:.85em}

.toolbar .post-votes{align-items:center;gap:.45em}.thumb-icon{width:1.35em;height:1.35em;vertical-align:middle}.toolbar .vote-button{background:transparent;border:0;box-shadow:none;padding:.3em;line-height:1;color:var(--muted)}.vote-button.dislike .thumb-icon{transform:rotate(180deg)}.vote-button:hover{color:var(--text)}.vote-button[aria-pressed=true] .thumb-icon{fill:currentColor}.vote-button.like[aria-pressed=true]{color:#a3be8c}.vote-button.dislike[aria-pressed=true]{color:#bf616a}.vote-score{font-variant-numeric:tabular-nums}

.post-uploader a{display:inline-flex;align-items:center;gap:.4em}.meta .post-safety{font-size:1.1em}.post-source h3{margin-bottom:.4em}.post-source pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--panel);padding:.65em;margin-top:0;font-size:.9em}.post-source code{font-family:monospace}

.post-uploader{display:flex;align-items:center;flex-wrap:wrap;column-gap:.5em;row-gap:.2em}.post-uploader time{white-space:nowrap}.collection{min-width:0;overflow-wrap:anywhere}.collection h2{overflow-wrap:anywhere}.collections{grid-template-columns:repeat(auto-fill,minmax(min(16em,100%),1fr))}

.featured img{width:100%;height:60vh;max-height:48em;object-fit:contain}
.upload-page{max-width:70em;margin:0 auto}.upload-dropzone{display:flex;flex-direction:column;align-items:center;gap:1em;padding:3em 1em;border:2px dashed var(--line);text-align:center}.upload-dropzone.dragging{background:var(--hover)}.upload-dropzone input{max-width:100%}.upload-dropzone small{color:var(--muted)}.upload-controls{display:flex;align-items:center;flex-wrap:wrap;gap:1em;margin:1em 0}.upload-controls label{font-size:.9em}.upload-queue{list-style:none;padding:0}.upload-row{display:grid;grid-template-columns:10em minmax(0,1fr);gap:1em;padding:1em 0;border-top:1px solid var(--line)}.upload-preview{width:100%;height:10em;object-fit:contain}.upload-details{min-width:0}.upload-details header{display:flex;gap:.5em;align-items:center}.upload-details strong{flex:1;overflow-wrap:anywhere}.upload-details header button{padding:.2em .5em}.upload-safety{display:flex;gap:.5em;border:0;padding:.5em 0;margin:0}.upload-safety legend{font-size:.9em}.upload-safety label{position:relative;cursor:pointer}.upload-safety input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.upload-safety .safety-dot{display:grid;place-items:center;width:1.7em;height:1.7em;background:var(--panel);border:1px solid currentColor;color:transparent}.upload-safety .safe{border-color:#a3be8c}.upload-safety .sketchy{border-color:#ebcb8b}.upload-safety .unsafe{border-color:#bf616a}.upload-safety input:checked+.safe{background:#a3be8c;color:#2e3440}.upload-safety input:checked+.sketchy{background:#ebcb8b;color:#2e3440}.upload-safety input:checked+.unsafe{background:#bf616a;color:#2e3440}.upload-safety input:focus-visible+span{outline:2px solid var(--text);outline-offset:3px}.upload-safety input:disabled+span{opacity:.6}@media(max-width:500px){.upload-row{grid-template-columns:6em minmax(0,1fr)}.upload-preview{height:6em}}
.comment-markdown{overflow-wrap:anywhere;line-height:1.6}.comment-markdown>:first-child{margin-top:0}.comment-markdown>:last-child{margin-bottom:0}.comment-markdown pre{overflow:auto;max-width:100%;background:var(--hover);padding:.7em}.comment-markdown code{font-family:monospace;background:var(--hover)}.comment-markdown blockquote{border-left:3px solid var(--line);margin-left:0;padding-left:1em;color:var(--muted)}.comment-markdown img{max-width:100%;height:auto}.comment-markdown table{display:block;overflow:auto}.comment-markdown ul,.comment-markdown ol{padding-left:1.5em}
@media(max-width:800px),(pointer:coarse){input:not([type=checkbox]):not([type=radio]),textarea,select{font-size:16px!important}}
@media(max-width:800px){#top-navigation{align-items:flex-start}#top-navigation nav{width:auto;flex:1;justify-content:flex-start}.identity{font-size:1em}#top-navigation a,#top-navigation .identity button{display:flex;align-items:center;min-height:2.8rem;line-height:1.3;box-sizing:border-box}#top-navigation .identity{align-items:center}.post-layout>.post-body{display:contents}.post-layout>.post-body>.post-image-heading,.post-layout>.post-body>.viewer,.post-layout>.post-body>.note-editor-tools{order:1}.post-layout>aside{order:2}.post-layout>.post-body>.comments{order:3}}

.syntax-help-dialog{background:var(--popup);color:var(--text);border:1px solid var(--line);padding:1.5em;width:min(42em,calc(100vw - 2em));max-height:85dvh;overflow:auto;box-shadow:0 .5em 2em var(--shadow)}.syntax-help-dialog::backdrop{background:rgba(0,0,0,.65)}.syntax-help-close{float:right;margin:0 0 .7em 1em}.syntax-help-content{line-height:1.6;font-size:1rem}.syntax-help-content h2{margin-top:0}.syntax-help-content dt{margin-top:.7em;overflow-wrap:anywhere}.syntax-help-content dd{margin:.2em 0 .7em}.syntax-help-content code{background:var(--hover);padding:.1em .25em}.comment-edit>summary.button{list-style:none;display:inline-block;color:#eceff4}.comment-edit>summary::-webkit-details-marker{display:none}.comment-edit[open]>summary{margin-bottom:1em}

#pending-tag-suggestions p,#tag-draft-status{font-size:.85em;color:var(--muted)}#pending-tag-suggestions>div{display:flex;flex-wrap:wrap;gap:.4em}.suggested-tag{background:var(--hover);border:1px solid var(--line);color:var(--link);white-space:normal;overflow-wrap:anywhere;text-align:left;font-size:.85em;padding:.3em .5em}

@keyframes auto-tag-highlight{0%,35%{background-color:#a3be8c66}100%{background-color:var(--tag-resting-background,transparent)}}.auto-added-tag{animation:auto-tag-highlight 1.2s ease-out}@media(prefers-reduced-motion:reduce){.auto-added-tag{animation:none;outline:1px solid #a3be8c}}

.page-jump{margin:0}.page-jump input[name=page]{width:4.5em;padding:.25em;text-align:center;appearance:textfield;-moz-appearance:textfield}.page-jump input::-webkit-inner-spin-button,.page-jump input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.page-jump button[hidden]{display:none}

.note-tooltip .note-markdown{white-space:normal}

.post-sidebar-content{width:100%;min-width:0}@media(min-width:801px){.post-layout>aside{min-height:calc(100dvh - 8em);display:flex;flex-direction:column;justify-content:center}}

.post-sidebar-title{align-items:center;gap:.7em}.post-id{font-weight:600;white-space:nowrap}

.post-reactions { display:flex; align-items:center; flex-wrap:wrap; gap:.5em; }
button:disabled { cursor:wait; opacity:.6; }

.tag-count{color:var(--muted);font-size:.85em;white-space:nowrap;margin-left:.25em}
.reverse-search{margin:.8em 0}.reverse-search .button{font-size:.8em;padding:.35em .5em;margin-bottom:.3em}
.comment-card{position:relative}.comment-card .comment-meta{padding-right:5rem;min-height:2rem}
.comment-icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:.35rem;box-sizing:border-box;cursor:pointer;background:transparent;border:0;color:var(--muted)}
.comment-icon:hover{background:var(--hover);color:var(--text)}
.comment-edit>.edit-comment-icon{position:absolute;top:.7rem;right:3rem;list-style:none}.comment-edit>.edit-comment-icon::-webkit-details-marker{display:none}
.comment-delete{position:absolute;top:.7rem;right:.7rem;margin:0}
.comment-votes form{display:flex;align-items:center;gap:.5em}.comment-votes{margin-top:.5em}.comment-edit[open] form{margin-top:.7em}
@media(max-width:800px){
 #top-navigation{display:flex;flex-direction:column;align-items:stretch;padding:0}
 #top-navigation nav{width:100%;flex:none;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scrollbar-width:thin}
 #top-navigation nav a{flex:none;white-space:nowrap;padding:0 .7rem;min-height:2.75rem}
 #top-navigation .identity{width:100%;margin:0;justify-content:flex-end;flex-wrap:nowrap;border-top:1px solid var(--line);font-size:.9rem}
 #top-navigation .identity a,#top-navigation .identity button{min-height:2.75rem;line-height:1;padding:0 .7rem;white-space:nowrap}
 #top-navigation .nav-account{min-width:0;overflow:hidden;text-overflow:ellipsis}
}

/* Search is the native default submitter; safety controls keep their visual position. */
.search > .search-submit { order: 1; }

.grid-item.untagged .thumbnail{outline:4px solid #bf616a;outline-offset:-4px}
@media(max-width:800px){.grid-item.untagged .thumbnail{outline-width:2px;outline-offset:-2px}}
@keyframes upload-error-highlight{0%,35%{background-color:#bf616a66}100%{background-color:transparent}}
.upload-error,main[data-view=error] .alert{color:#bf616a;animation:upload-error-highlight 1.2s ease-out}
@media(prefers-reduced-motion:reduce){.upload-error,main[data-view=error] .alert{animation:none;outline:1px solid #bf616a}}

/* Form wrappers must not add an inline baseline above their icon buttons. */
.comment-delete,.note-delete{display:flex;align-items:center;line-height:1}
.comment-icon{margin:0;line-height:1;vertical-align:top;flex:none}
.comment-icon svg{display:block;flex:none}
.comment-edit>.edit-comment-icon,.comment-edit[open]>.edit-comment-icon{margin:0;display:flex;align-items:center;justify-content:center}
.note-card{position:relative}
.note-card:has(.note-edit)>.note-markdown{padding-top:2rem}
.note-edit>.edit-note-icon{position:absolute;top:.7rem;right:3rem;list-style:none;display:flex}
.note-edit>.edit-note-icon::-webkit-details-marker{display:none}
.note-delete{position:absolute;top:.7rem;right:.7rem;margin:0}
.note-edit .note-form{margin-top:.7em}
.note-save-actions{display:flex;justify-content:flex-end}

.note-group-heading{font-size:1.1em;margin:0 0 .75em}
.note-group-list{list-style:none;margin:0;padding:0;min-width:0}
.note-group-list>li{padding:.75em 0;border-top:1px solid var(--line)}
.note-group-list>li:first-child{padding-top:0;border-top:0}
.note-permalink{font-size:.8em;color:var(--muted)}
.note-group-list .comment-markdown>:last-child{margin-bottom:0}
.note-group>.comment-post{align-self:start}

.comment-votes form{justify-content:flex-start;gap:.35rem}
.comment-votes .thumb-icon{width:18px;height:18px}

.tag-list .unused-pending-tag{--tag-resting-background:#ebcb8b40;background-color:var(--tag-resting-background);border-radius:2px}
.tag-details-icon{display:inline-flex;align-items:center;justify-content:center;align-self:baseline;flex:none;color:var(--muted);line-height:1;padding:.15em 0}
.tag-details-icon svg{display:block;width:1em;height:1em}
.tag-details-icon:hover{color:var(--link)}

.tag-page{max-width:62rem;margin:0 auto}
.tag-page-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem}
.tag-page-heading>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:.6rem;min-width:0}
.tag-page-heading h1{font-size:1.65rem;margin:0;overflow-wrap:anywhere}
.tag-editor{padding:1rem}.tag-editor>summary{cursor:pointer;color:var(--link)}
.tag-editor[open]>summary{margin-bottom:.75rem}
.tag-edit-form{gap:.75rem}.tag-edit-form textarea{min-height:5rem}
.tag-basic-fields{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:.8rem}
.tag-basic-fields label{display:flex;flex-direction:column;gap:.25rem}
.tag-related-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.tag-related-fields h2{font-size:1rem;margin:0 0 .35rem}
.tag-related-fields input{width:100%}.tag-related-fields tag-autocomplete{display:block}
.tag-chips{display:flex;flex-wrap:wrap;gap:.35rem .6rem;list-style:none;margin:0 0 .5rem;padding:0;min-height:1.5rem;font-size:.9rem}
.tag-chips li{display:inline-flex;align-items:baseline;gap:.25rem;min-width:0;max-width:100%}
.tag-chips a{overflow-wrap:anywhere}.tag-chips .tag-count{margin:0}
@media(max-width:600px){.tag-basic-fields,.tag-related-fields{grid-template-columns:1fr}.tag-page-heading{align-items:flex-start;flex-wrap:wrap}.tag-editor{padding:.75rem}}

.stack .tag-action-confirm{flex-direction:row;align-items:flex-start;gap:.6em;cursor:pointer}.stack .tag-action-confirm input[type=checkbox]{width:1.1em;height:1.1em;flex:none;margin:.15em 0 0;accent-color:var(--link)}
tag-relation-list{display:block}tag-relation-list .tag-add-row input{width:100%}tag-relation-list .tag-chips{margin-top:.5em}

.post-tags-heading{display:flex;align-items:center;gap:.45em;margin-top:1.5em;margin-bottom:.5em}.post-tags-heading h3{margin:0}.tag-clipboard-ready .copy-tags{display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--muted);padding:.25em;border:0}.copy-tags:hover{color:var(--link);background:var(--hover)}.copy-tags-status{font-size:.8em;color:var(--muted)}

.post-list-header:has(.mass-tag input:focus){z-index:60}.mass-tag tag-autocomplete{min-width:8em}.mass-tag .tag-suggestions{min-width:18em;max-width:calc(100vw - 3em);text-align:left}
.mass-delete{display:flex;align-items:center;gap:.6em;flex-wrap:wrap}.mass-delete .danger{margin:0}.mass-delete small{color:var(--muted)}.delete-card-select{position:absolute;inset:0;cursor:pointer}.delete-card-select input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.delete-card-select span{position:absolute;top:.35em;left:.35em;background:var(--panel);padding:.1em .35em;pointer-events:none}.grid-item:has(.delete-card-select input:checked){outline:3px solid #bf616a;outline-offset:-3px}.delete-card-select:has(input:checked){background:#bf616a44}.delete-card-select:has(input:checked) span{background:#bf616a;color:#fff}.delete-card-select:has(input:focus-visible){outline:3px solid var(--link);outline-offset:-3px}.post-delete-form{margin:.7em 0}.delete-confirmation>.grid{grid-template-columns:repeat(auto-fill,minmax(10em,1fr));max-width:70em}
