:root{--base-bg: 255 255 255;--base-fg: 41 41 41;--opacity-fg: rgb(var(--base-fg) / 100%);--opacity-fg-84: rgb(var(--base-fg) / 84%);--opacity-fg-75: rgb(var(--base-fg) / 75%);--opacity-fg-67: rgb(var(--base-fg) / 67%);--opacity-fg-54: rgb(var(--base-fg) / 54%);--opacity-fg-40: rgb(var(--base-fg) / 40%);--color-bg-accent: rgb(25 25 25);--color-fg-accent: rgb(25 25 25);--color-fg-link: rgb(25 25 25);--color-fg-link-visited: rgb(90 90 90);--color-fg-negative: rgb(198 40 40);--color-fg-affirmative: rgb(46 125 50);--color-fg-author: rgb(25 118 210);--color-fg-shape: rgb(230 230 230);--color-bg: rgb(var(--base-bg));--color-fg: rgb(var(--base-fg));--color-box-bg: #ffffff;--color-box-bg-shaded: #f7f7f7;--color-box-border: #e6e6e6;--color-box-border-focus: #292929;--color-button-bg: #ffffff;--color-button-bg-shaded: #f0f0f0;--color-button-bg-accent: #1a8917;--color-button-bg-accent-hover: #156d12;--color-button-fg-accent: #ffffff;--color-button-bg-danger: rgb(198 40 40);--color-button-bg-danger-hover: #922020;--color-table-header-bg: #fafafa;--color-table-header-border: #e6e6e6;--color-table-row-bg-even: #ffffff;--color-table-row-bg-odd: #fafafa;--color-table-row-border: #f0f0f0;--color-tag-bg: #f2f2f2;--color-tag-border: transparent;--color-tag-meta-bg: #f2f2f2;--color-tag-meta-border: transparent;--color-flash-bg-error: #fdecea;--color-flash-bg-success: #e8f5e9;--color-flash-bg-notice: #e3f2fd;--color-comment-new-bg: #fff8e1;--color-comment-new-border: #ffc107;--color-comment-highlight: #fff8e1;--color-rss: #f26522;--color-rss-hover-bg: #fff3e0;--color-selection-bg: rgba(26, 137, 23, 0.2);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-serif: "Charter", "Bitstream Charter", "Sitka Text", Cambria, "Noto Serif", serif;--font-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Menlo, Consolas, monospace;--font-size-default: 16px;--font-size-small: 0.875rem;--font-size-tags: 0.8rem;--line-height-text: 1.5;--line-height-article: 1.72;--space-xs: 0.5rem;--space-sm: 1rem;--space-md: 2rem;--space-lg: 4rem;--space-xl: 6rem;--input-outline-width: 2px;--transition-fast: 0.15s ease;--transition-normal: 0.3s ease;--content-width: 720px;--content-width-default: 720px;--content-width-wide: 1192px;--content-width-medium: 900px;--content-width-narrow: 520px;--content-padding: 24px;--content-padding-full: 40px;--z-content: 10;--z-floating: 90;--z-header: 100;--z-progress: 110;--z-dropdown: 1000;--z-toast: 1100;--radius-sm: 3px;--radius-md: 4px;--radius-lg: 8px;--radius-full: 999px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.06);--shadow-md: 0 4px 20px rgba(0, 0, 0, 0.08);--shadow-lg: 0 8px 30px rgba(0, 0, 0, 0.12);}[data-theme="dark"]{--base-bg: 18 18 18;--base-fg: 230 230 230;--color-bg-accent: rgb(220 80 70);--color-fg-accent: rgb(220 80 70);--color-fg-link: rgb(220 220 220);--color-fg-link-visited: rgb(170 170 170);--color-fg-negative: rgb(255 120 120);--color-fg-affirmative: rgb(120 220 120);--color-fg-author: rgb(140 180 240);--color-fg-shape: rgb(50 50 50);--color-bg: rgb(var(--base-bg));--color-fg: rgb(var(--base-fg));--color-box-bg: #1e1e1e;--color-box-bg-shaded: #252525;--color-box-border: #333333;--color-box-border-focus: #f5f5f5;--color-button-bg: #2a2a2a;--color-button-bg-shaded: #333333;--color-button-bg-accent: #1f9d1c;--color-button-bg-accent-hover: #24b320;--color-button-bg-danger: rgb(220 60 60);--color-button-bg-danger-hover: rgb(255 90 90);--color-table-header-bg: #252525;--color-table-header-border: #333333;--color-table-row-bg-even: #1e1e1e;--color-table-row-bg-odd: #252525;--color-table-row-border: #2a2a2a;--color-tag-bg: #2a2a2a;--color-tag-border: transparent;--color-tag-meta-bg: #2a2a2a;--color-tag-meta-border: transparent;--color-flash-bg-error: #3a1a1a;--color-flash-bg-success: #1a3a1a;--color-flash-bg-notice: #1a2a3a;--color-comment-new-bg: #3a3010;--color-comment-new-border: #d29922;--color-comment-highlight: #3a3010;--color-rss: #ff8c42;--color-rss-hover-bg: #3a2a1a;--color-selection-bg: rgba(220, 80, 70, 0.3);--shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.3);--shadow-md: 0 4px 20px rgba(0, 0, 0, 0.4);--shadow-lg: 0 8px 30px rgba(0, 0, 0, 0.5);}*, *::before, *::after{box-sizing: border-box;}html{font-size: var(--font-size-default);overflow-y: scroll;scroll-behavior: smooth;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}body{font-family: var(--font-sans);font-size: 1rem;line-height: var(--line-height-text);color: var(--color-fg);background-color: var(--color-bg);margin: 0;padding: 0;transition: background-color var(--transition-fast), color var(--transition-fast);}main{padding-top: 0;width: 100%;}main .content{margin: 0 auto;padding: 0 var(--content-padding);transition: max-width 0.2s ease;}main .content.content-default{max-width: var(--content-width-default);}main .content.content-wide{max-width: var(--content-width-wide);}main .content.content-medium{max-width: var(--content-width-medium);}main .content.content-narrow{max-width: var(--content-width-narrow);}main .content.content-full{max-width: none;padding-left: var(--content-padding-full);padding-right: var(--content-padding-full);}@media (max-width: 1240px){main .content.content-wide{max-width: 100%;}}@media (max-width: 640px){main .content{padding: 0 16px;} main .content.content-full{padding: 0 16px;}}p, ul, ol, blockquote, pre, figure, table{margin: 1.5rem 0;}p{margin: 1.46rem 0;}a{color: var(--color-fg-link);text-decoration: underline;text-decoration-color: transparent;text-underline-offset: 2px;transition: text-decoration-color var(--transition-fast), color var(--transition-fast);}a:hover{text-decoration-color: currentColor;}a:active{opacity: 0.8;}h1, h2, h3, h4, h5, h6{font-family: var(--font-sans);font-weight: 700;line-height: 1.25;margin: 2.5rem 0 1rem;letter-spacing: -0.015em;}h1{font-size: 2.25rem;letter-spacing: -0.022em;margin-top: 0;}h2{font-size: 1.625rem;}h3{font-size: 1.25rem;}h4{font-size: 1.1rem;}h5{font-size: 1rem;}h6{font-size: 0.875rem;text-transform: uppercase;letter-spacing: 0.05em;}hr{border: none;height: 1px;background-color: var(--color-fg-shape);margin: 3rem 0;}blockquote{margin: 2rem 0;padding: 0 0 0 20px;border-left: 3px solid var(--color-fg);font-family: var(--font-serif);font-size: 1.3rem;font-style: italic;line-height: 1.5;color: var(--color-fg);letter-spacing: -0.006em;}blockquote footer{margin-top: 0.5rem;font-family: var(--font-sans);font-size: 0.875rem;font-style: normal;color: var(--opacity-fg-54);}blockquote footer::before{content: "— ";}mark{background-color: var(--color-selection-bg);padding: 0 2px;border-radius: 2px;}small{font-size: 0.875em;color: var(--opacity-fg-67);}sub, sup{font-size: 0.75em;line-height: 0;position: relative;vertical-align: baseline;}sup{top: -0.5em;}sub{bottom: -0.25em;}i, em{font-style: italic;}b, strong{font-weight: 700;}pre{background-color: var(--color-box-bg-shaded);padding: 1.25rem 1.5rem;border-radius: var(--radius-md);white-space: pre-wrap;overflow-x: auto;font-family: var(--font-mono);font-size: 0.9em;line-height: 1.55;border: 1px solid var(--color-fg-shape);}code{background-color: var(--color-box-bg-shaded);padding: 2px 6px;border-radius: var(--radius-sm);font-family: var(--font-mono);font-size: 0.88em;border: 1px solid var(--color-fg-shape);}pre code{background: none;padding: 0;font-size: inherit;border: none;}ul, ol{padding-left: 1.5rem;}li{margin: 0.3rem 0;}ul ul, ul ol,ol ul, ol ol{margin: 0.5rem 0;}img{max-width: 100%;height: auto;display: block;}figure{margin: 3rem 0;padding: 0;width: 100%;display: flex;flex-direction: column;align-items: center;}figure img{display: block;max-width: 100%;height: auto;object-fit: cover;border-radius: var(--radius-sm);}figure figcaption{margin-top: 0.75rem;font-family: var(--font-sans);font-size: 0.875rem;line-height: 1.4;color: var(--opacity-fg-54);text-align: center;max-width: var(--content-width);letter-spacing: -0.003em;}input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),textarea, select{width: 100%;max-width: 100%;box-sizing: border-box;}input, button, select, textarea{font-family: inherit;font-size: 1rem;color: var(--color-fg);background-color: var(--color-box-bg);padding: 0.6rem 0.875rem;border: 1px solid var(--color-box-border);border-radius: var(--radius-md);transition: border-color var(--transition-fast), box-shadow var(--transition-fast);}input:focus, select:focus, textarea:focus{outline: none;border-color: var(--color-box-border-focus);box-shadow: 0 0 0 3px rgba(41, 41, 41, 0.08);}textarea{min-height: 120px;resize: vertical;line-height: 1.55;}input[type="checkbox"],input[type="radio"]{width: auto;margin-right: 0.5rem;}::placeholder{color: var(--opacity-fg-40);opacity: 1;}button, input[type="submit"], input[type="button"]{width: auto;background-color: var(--color-button-bg);border: 1px solid var(--color-box-border);color: var(--color-fg);cursor: pointer;padding: 0.55rem 1.125rem;font-weight: 500;border-radius: var(--radius-md);transition: background-color var(--transition-fast), border-color var(--transition-fast), opacity var(--transition-fast), transform var(--transition-fast);}button:hover, input[type="submit"]:hover, input[type="button"]:hover{background-color: var(--color-button-bg-shaded);}button:disabled,input[type="submit"]:disabled,input[type="button"]:disabled{opacity: 0.5;cursor: not-allowed;background-color: var(--color-box-bg-shaded);}button:active:not(:disabled),input[type="submit"]:active:not(:disabled),input[type="button"]:active:not(:disabled){transform: translateY(1px);}table{width: 100%;border-collapse: collapse;margin: 2rem 0;font-size: 0.95rem;}th, td{padding: 0.85rem 1rem;text-align: left;border-bottom: 1px solid var(--color-table-row-border);}thead th{background-color: var(--color-table-header-bg);font-weight: 600;border-bottom: 1px solid var(--color-table-header-border);}tbody tr:hover{background-color: var(--color-box-bg-shaded);}@media (max-width: 640px){table{display: block;overflow-x: auto;white-space: nowrap;}}nav{display: flex;align-items: center;gap: 1.5rem;flex-wrap: wrap;}nav a{color: var(--opacity-fg-54);font-weight: 500;text-decoration: none;transition: color var(--transition-fast);}nav a:hover{color: var(--color-fg);}nav[aria-label="Breadcrumb"]{margin: 1.5rem 0;font-size: 0.875rem;}nav[aria-label="Breadcrumb"] ol{list-style: none;padding: 0;margin: 0;display: flex;gap: 0.5rem;flex-wrap: wrap;}nav[aria-label="Breadcrumb"] li{display: contents;}nav[aria-label="Breadcrumb"] li:not(:last-child)::after{content: "/";margin-left: 0.5rem;color: var(--opacity-fg-40);}nav[aria-label="Breadcrumb"] a{color: var(--opacity-fg-54);font-weight: normal;}nav[aria-label="Breadcrumb"] [aria-current="page"]{color: var(--color-fg);font-weight: 500;}footer{max-width: var(--content-width-wide);margin: 4rem auto 0;padding: 2rem var(--content-padding);font-size: 0.875rem;color: var(--opacity-fg-54);border-top: 1px solid var(--color-fg-shape);}footer nav{display: flex;align-items: center;gap: 1.5rem;flex-wrap: wrap;}footer a{color: var(--opacity-fg-54);text-decoration: none;transition: color var(--transition-fast);}footer a:hover{color: var(--color-fg);text-decoration: underline;}footer .hint.right{margin-left: auto;font-size: 0.75rem;font-style: normal;color: var(--opacity-fg-40);}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline: 2px solid var(--color-fg-accent);outline-offset: 2px;}.visually-hidden{position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0, 0, 0, 0);white-space: nowrap;border: 0;}@media (prefers-reduced-motion: reduce){*, *::before, *::after{animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;transition-duration: 0.01ms !important;scroll-behavior: auto !important;}}::selection{background-color: var(--color-selection-bg);color: var(--color-fg);}[hidden]{display: none !important;}[id]{scroll-margin-top: 80px;}table.is-striped tbody tr:nth-child(even){background-color: var(--color-table-row-bg-even);}nav.is-borderless{border-bottom: none;}input.is-compact, textarea.is-compact, select.is-compact{width: auto;max-width: 300px;}button.is-link{background: none;border: none;color: var(--opacity-fg-67);padding: 0;}button.is-danger{background: var(--color-fg-negative);color: var(--color-box-bg);border-color: var(--color-fg-negative);}dialog{border: none;border-radius: 6px;padding: 0;max-width: 600px;width: 90%;max-height: 90vh;box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);}dialog::backdrop{background: rgba(0, 0, 0, 0.5);}dialog form{padding: 1.5em;background: var(--color-box-bg);}.modal-actions{display: flex;justify-content: flex-end;gap: 0.5em;margin-top: 1.5em;} .header{width: 100%;height: 60px;border-bottom: 1px solid var(--color-fg-shape);position: sticky;top: 0;background-color: rgba(255, 255, 255, 0.92);backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px);z-index: var(--z-header);font-family: var(--font-sans);margin-bottom: 20px;}.navbar-container{max-width: 1192px;height: 100%;margin: 0 auto;padding: 0 var(--content-padding);display: flex;justify-content: space-between;align-items: center;}a.navbar-logo{font-family: var(--font-serif);font-weight: 700;font-size: 1.5rem;color: var(--color-fg);letter-spacing: -0.02em;text-decoration: none;}a.navbar-logo:hover{color: var(--color-fg);}.navbar-links{display: flex;gap: 1.5rem;align-items: center;margin-left: auto;font-size: 0.9rem;padding: 0;margin-block: 0;list-style: none;}.navbar-links > a{color: var(--opacity-fg-67);font-weight: 500;text-decoration: none;transition: color var(--transition-fast);}.navbar-links > a:hover{color: var(--color-fg);}.navbar-user-dropdown-container{position: relative;}.dropdown-trigger-btn{display: flex;align-items: center;gap: 0.5rem;background: none;border: none;color: var(--color-fg);font-family: inherit;font-size: 0.9rem;font-weight: 500;cursor: pointer;padding: 4px 8px;border-radius: var(--radius-full);}.dropdown-trigger-btn:hover{background-color: var(--color-box-bg-shaded);}.mini-avatar-img,.mini-avatar-placeholder{width: 28px;height: 28px;border-radius: 50%;object-fit: cover;}.mini-avatar-placeholder{display: inline-flex;align-items: center;justify-content: center;background-color: var(--color-fg);color: var(--color-bg);font-size: 0.85rem;font-weight: 600;}.dropdown-arrow-icon{font-size: 0.6em;color: var(--opacity-fg-54);}.navbar-dropdown-menu{display: none;position: absolute;top: 100%;right: 0;min-width: 220px;background-color: var(--color-box-bg);border: 1px solid var(--color-box-border);border-radius: var(--radius-md);box-shadow: var(--shadow-md);z-index: var(--z-dropdown);margin-top: 0.5rem;padding: 0.5rem 0;}.navbar-dropdown-menu.active{display: block;}.dropdown-menu-item{display: flex;align-items: center;gap: 0.6rem;padding: 0.6rem 1rem;color: var(--color-fg);font-size: 0.9rem;text-decoration: none;border: none;background: none;width: 100%;text-align: left;cursor: pointer;}.dropdown-menu-item:hover{background-color: var(--color-box-bg-shaded);}.dropdown-item-admin{color: var(--color-fg-negative);}.dropdown-divider{height: 1px;background-color: var(--color-box-border);margin: 0.4rem 0;}.nav-flag{position: relative;display: inline-flex;align-items: center;gap: 0.25rem;padding: 6px 8px;border-radius: var(--radius-full);text-decoration: none;font-size: 1rem;transition: background-color var(--transition-fast);}.nav-flag:hover{background-color: var(--color-box-bg-shaded);}.nav-flag .badge{font-size: 0.7rem;font-weight: 600;color: var(--color-fg-negative);}.dropdown-avatar-badge-wrapper{position: relative;display: inline-flex;}.nav-trigger-alert-dot{position: absolute;top: 0;right: 0;width: 8px;height: 8px;border-radius: 50%;background-color: var(--color-fg-negative);border: 2px solid var(--color-box-bg);}.nav-badge-counter{display: inline-flex;align-items: center;justify-content: center;min-width: 18px;height: 18px;padding: 0 5px;border-radius: var(--radius-full);background-color: var(--color-fg-negative);color: white;font-size: 0.65rem;font-weight: 600;margin-left: auto;}.dropdown-menu-item .red{margin-left: auto;font-weight: 600;}.header-notification-link{position: relative;display: inline-flex;align-items: center;justify-content: center;color: var(--color-fg);padding: 6px;border-radius: var(--radius-full);transition: background-color var(--transition-fast);}.header-notification-link:hover{background-color: var(--color-box-bg-shaded);}.header-notification-icon{width: 20px;height: 20px;stroke: currentColor;}.header-notification-badge{display: none;position: absolute;top: 2px;right: 2px;font-size: 0.6rem;font-weight: 600;padding: 2px 5px;border-radius: var(--radius-full);background-color: var(--color-fg-negative);color: white;min-width: 16px;text-align: center;transition: opacity var(--transition-fast), transform var(--transition-fast);transform-origin: top right;}.header-notification-badge.is-visible{display: inline-flex;align-items: center;justify-content: center;animation: badge-pop 0.25s ease-out;}@keyframes badge-pop{0%{opacity: 0;transform: scale(0.5);} 70%{transform: scale(1.15);} 100%{opacity: 1;transform: scale(1);}}.theme-toggle{background: none;border: none;cursor: pointer;padding: 6px;border-radius: var(--radius-full);color: var(--opacity-fg-67);display: inline-flex;transition: background-color var(--transition-fast), color var(--transition-fast);}.theme-toggle:hover{background-color: var(--color-box-bg-shaded);color: var(--color-fg);}.theme-toggle svg{width: 18px;height: 18px;}.theme-toggle .icon-sun{display: none;}.theme-toggle .icon-moon{display: inline-block;}ol.stories{list-style: none;margin: 0;padding: 0;}li.story{display: block;padding: 2rem 0;border-bottom: 1px solid var(--color-fg-shape);position: relative;}li.story:first-child{padding-top: 0;}li.story:last-child{border-bottom: none;}li.story.deleted{opacity: 0.5;}.story_liner{display: flex;flex-direction: column;gap: 0.5rem;}li .link{margin-bottom: 0.25rem;}li .link a.title{font-family: var(--font-sans);font-size: 1.375rem;font-weight: 700;line-height: 1.3;color: var(--color-fg);text-decoration: none;letter-spacing: -0.01em;display: block;margin-bottom: 0.25rem;}li .link a.title:hover{color: var(--color-fg);}li .link a.title:visited{color: var(--opacity-fg-67);}li .link .tags{display: block;margin-top: 0.25rem;}.tag{display: inline-block;color: var(--opacity-fg-54);font-size: var(--font-size-tags);font-weight: 500;margin-right: 0.5rem;text-decoration: none;background-color: var(--color-tag-bg);padding: 3px 10px;border-radius: var(--radius-full);transition: background-color var(--transition-fast), color var(--transition-fast);}.tag:hover{background-color: var(--color-button-bg-shaded);color: var(--color-fg);text-decoration: none;}.story-thumbnail{display: block;margin: 0.75rem 0 0.5rem;border-radius: var(--radius-md);overflow: hidden;max-width: 100%;}.story-thumbnail img{width: 100%;height: auto;max-height: 320px;object-fit: cover;display: block;}.story_content.excerpt{font-family: var(--font-serif);font-size: 1.0625rem;color: var(--opacity-fg-84);line-height: 1.58;margin: 0.5rem 0;overflow: hidden;display: -webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical;}.story_content.excerpt p{margin: 0;display: inline;}.byline,.story-meta{display: flex;align-items: center;flex-wrap: wrap;gap: 0.75rem;font-size: 0.8125rem;color: var(--opacity-fg-54);margin-top: 0.5rem;padding-top: 0.5rem;}.byline img.avatar,.story-meta img.avatar{width: 24px;height: 24px;border-radius: 50%;vertical-align: middle;}.byline a,.story-meta a{color: var(--opacity-fg-67);text-decoration: none;font-weight: 500;}.byline a:hover,.story-meta a:hover{color: var(--color-fg);text-decoration: underline;}.byline .divider,.story-meta .divider{color: var(--opacity-fg-40);}.byline a.user_is_author{color: var(--color-fg-author);}article{max-width: var(--content-width);margin: 0 auto;}.article-header{margin: 3rem 0 2.5rem;}.article-header h1{font-family: var(--font-sans);font-size: 2.5rem;line-height: 1.18;letter-spacing: -0.022em;margin: 0 0 1.5rem;font-weight: 700;color: var(--color-fg);}.article-header .data{display: flex;align-items: center;gap: 0.75rem;color: var(--opacity-fg-67);font-size: 0.875rem;flex-wrap: wrap;margin-bottom: 2.5rem;padding-bottom: 2rem;border-bottom: 1px solid var(--color-fg-shape);}.article-header img.avatar{height: 40px;width: 40px;border-radius: 50%;}.article-header .data a{color: var(--color-fg);font-weight: 600;text-decoration: none;}.article-header .data a:hover{text-decoration: underline;}.story_content{font-family: var(--font-serif);font-size: 1.25rem;line-height: var(--line-height-article);color: var(--color-fg);letter-spacing: -0.003em;word-break: break-word;margin-bottom: 2rem;}.story_content p{font-size: 1.25rem;line-height: 1.72;margin: 1.46rem 0;}.story_content h2{font-family: var(--font-sans);font-size: 1.625rem;margin: 2.75rem 0 1rem;letter-spacing: -0.015em;}.story_content h3{font-family: var(--font-sans);font-size: 1.3125rem;margin: 2.25rem 0 0.75rem;}.story_content img{max-width: 100%;height: auto;display: block;margin: 2rem auto;border-radius: var(--radius-sm);}.story_btn{display: flex;gap: 0.5rem;margin-top: 1.5rem;flex-wrap: wrap;}.score{font-size: 0.875rem;font-weight: 600;color: var(--opacity-fg-67);}.score-inline{color: var(--opacity-fg-67);font-size: 0.8125rem;font-weight: 500;}.story_content details{border: none;background: none;}.story_content summary{cursor: pointer;font-style: italic;font-size: 0.9em;color: var(--opacity-fg-67);}.story_content summary:hover{color: var(--color-fg);}.story_content details[open] summary{padding-bottom: 1rem;border-bottom: 1px solid var(--color-box-bg-shaded);}.voters:not(.voters--inline){display: none;}.voters--inline{display: inline-flex;align-items: center;gap: 0.5rem;margin: 0;padding: 0;border: none;font-family: var(--font-sans);}.voters--inline .inline-form{display: inline;margin: 0;}.voters--inline .upvoter{display: inline-flex;align-items: center;justify-content: center;gap: 0.25rem;color: var(--opacity-fg-54);font-size: 1rem;cursor: pointer;background: none;border: none;padding: 6px 12px;border-radius: var(--radius-full);transition: background-color var(--transition-fast), color var(--transition-fast);font-family: var(--font-sans);line-height: 1;}.voters--inline .upvoter:hover{background-color: var(--color-box-bg-shaded);color: var(--color-fg);}.voters--inline .upvoter.upvoted{color: var(--color-fg-accent);background-color: var(--color-box-bg-shaded);font-weight: 600;}.voters--inline .upvoter.disabled{color: var(--opacity-fg-40);cursor: default;}.voters--inline .upvoter.disabled:hover{background-color: transparent;}.voters--inline .upvoter-icon{font-size: 0.9rem;line-height: 1;}.voters--inline .score{font-size: 1rem;font-weight: 700;color: var(--color-fg);padding: 0 0.25rem;}.comment_votes{display: inline-flex;align-items: center;margin-right: 0.5rem;vertical-align: middle;}.comment_votes .voters--inline{margin: 0;padding: 0;border-top: none;border-bottom: none;gap: 0.125rem;}.comment_votes .voters--inline .upvoter{font-size: 0.75rem;padding: 2px 4px;border-radius: var(--radius-sm);}.comment_votes .voters--inline .upvoter-icon{font-size: 0.7rem;}.comment_votes .voters--inline .score{font-size: 0.8125rem;font-weight: 600;padding: 0 2px;}.comment-head{margin: 3rem 0 1.5rem;display: flex;align-items: center;justify-content: space-between;flex-wrap: wrap;gap: 1rem;}.comment-head h3{font-size: 1.25rem;margin: 0;font-weight: 700;}.comment_form_container{max-width: var(--content-width);margin: 2rem auto;}.comment_form_container h3{font-size: 1.125rem;margin: 0 0 1rem;}.comment_form_container textarea{font-family: var(--font-sans);font-size: 1rem;min-height: 120px;}ol.comments{list-style: none;margin: 0;padding: 0;max-width: var(--content-width);margin-left: auto;margin-right: auto;}ol.comments ol.comments{margin-left: 0.6rem;padding-left: 1rem;border-left: 1px solid var(--color-fg-shape);}li.comment{display: block;margin-bottom: 1.5rem;padding: 0.75rem 0;clear: both;}.comment_meta{display: flex;align-items: center;gap: 0.5rem;color: var(--opacity-fg-54);font-size: 0.8125rem;margin-bottom: 0.5rem;flex-wrap: wrap;}.comment_meta a{color: var(--color-fg);font-weight: 600;text-decoration: none;}.comment_meta a:hover{text-decoration: underline;}.comment_text{max-width: 100%;overflow-wrap: break-word;font-size: 1rem;line-height: 1.6;color: var(--color-fg);}.comment_text p{margin: 0.4rem 0;}.comment_actions{margin-top: 0.5rem;font-size: 0.8125rem;display: flex;gap: 0.75rem;flex-wrap: wrap;align-items: center;}.comment_actions a,.comment_actions button{color: var(--opacity-fg-54);background: none;border: none;padding: 0;font: inherit;cursor: pointer;text-decoration: none;}.comment_actions a:hover,.comment_actions button:hover{color: var(--color-fg);text-decoration: underline;}.comment_actions .divider{color: var(--color-fg-shape);margin: 0 0.25rem;}.comment.deleted{opacity: 0.5;}.comment.deleted .comment_text{font-style: italic;color: var(--opacity-fg-54);}.comment.is-new{background-color: var(--color-comment-new-bg);padding-left: 0.75rem;margin-left: -0.75rem;border-left: 3px solid var(--color-comment-new-border);border-radius: var(--radius-sm);}.comment:target{background-color: var(--color-comment-highlight);padding: 0.75rem;margin-left: -0.75rem;border-radius: var(--radius-md);scroll-margin-top: 80px;}.profile-header{display: flex;gap: 2rem;align-items: flex-start;margin: 2rem 0 3rem;padding-bottom: 2.5rem;border-bottom: 1px solid var(--color-fg-shape);}.profile-avatar-large,.profile-avatar-placeholder-large{width: 110px;height: 110px;border-radius: 50%;object-fit: cover;background: var(--color-box-bg-shaded);display: flex;align-items: center;justify-content: center;font-size: 2.75rem;font-weight: 700;color: var(--opacity-fg-67);flex-shrink: 0;}.profile-info{flex: 1;min-width: 0;}.profile-username{margin: 0 0 0.25rem;font-family: var(--font-sans);font-size: 2rem;font-weight: 700;letter-spacing: -0.02em;line-height: 1.2;}.profile-bio{margin: 0 0 1rem;color: var(--opacity-fg-67);line-height: 1.55;font-size: 1.0625rem;max-width: 600px;}.profile-stats{font-size: 0.9rem;color: var(--opacity-fg-54);}.profile-stats strong{color: var(--color-fg);font-weight: 700;}.profile-stats .divider{margin: 0 0.75rem;color: var(--opacity-fg-40);}.text-positive{color: var(--color-fg-affirmative);}.text-negative{color: var(--color-fg-negative);}.text-muted{color: var(--opacity-fg-54);}.story-card-medium{padding: 1.5rem 0;border-bottom: 1px solid var(--color-fg-shape);}.story-card-medium:last-child{border-bottom: none;}.story-card-title{font-family: var(--font-sans);font-size: 1.25rem;font-weight: 700;color: var(--color-fg);text-decoration: none;display: block;margin-bottom: 0.25rem;letter-spacing: -0.008em;line-height: 1.3;}.story-card-title:hover{text-decoration: underline;}.story-card-meta{font-size: 0.8125rem;color: var(--opacity-fg-54);margin-bottom: 0.5rem;}.tag-small{color: var(--opacity-fg-67);text-decoration: none;margin-right: 0.25rem;}.tag-small:hover{text-decoration: underline;}.story-card-excerpt{font-family: var(--font-serif);font-size: 1.0625rem;color: var(--opacity-fg-84);line-height: 1.55;}.editorjs-image{margin: 1.5rem 0;display: flex;flex-direction: column;align-items: center;}.editorjs-image img{width: 100%;max-width: 100%;height: auto;display: block;}.editorjs-image--border img{border: 1px solid var(--color-box-border);}.editorjs-image--background{background: var(--color-box-bg-shaded);padding: 16px;width: 100%;box-sizing: border-box;}.editorjs-image--background img{max-height: 350px;object-fit: contain;}.editorjs-image figcaption{margin-top: 8px;font-size: 0.85rem;color: var(--opacity-fg-54);text-align: center;padding: 0 10px;}.nav.br-none{display: flex;gap: 0.25rem;margin: 1.5rem 0 1rem;border-bottom: 1px solid var(--color-fg-shape);}.nav.br-none a{padding: 0.625rem 1rem;color: var(--opacity-fg-54);text-decoration: none;font-weight: 500;font-size: 0.9375rem;border-bottom: 2px solid transparent;margin-bottom: -1px;transition: color var(--transition-fast), border-color var(--transition-fast);}.nav.br-none a:hover{color: var(--color-fg);}.nav.br-none a.is-active{color: var(--color-fg);border-bottom-color: var(--color-fg);}.alert{padding: 1rem 1.25rem;border-radius: var(--radius-md);margin: 1.5rem 0;font-size: 0.9375rem;line-height: 1.5;border-left: 4px solid transparent;}.alert strong{font-weight: 600;}.alert.is-danger{background-color: var(--color-flash-bg-error);border-left-color: var(--color-fg-negative);}.alert.is-success{background-color: var(--color-flash-bg-success);border-left-color: var(--color-fg-affirmative);}.alert.is-notice{background-color: var(--color-flash-bg-notice);border-left-color: var(--color-fg-author);}.pagination{display: flex;gap: 0.5rem;justify-content: center;margin: 3rem 0;flex-wrap: wrap;}.pagination a,.pagination span{padding: 0.5rem 0.875rem;border-radius: var(--radius-md);color: var(--color-fg);text-decoration: none;font-size: 0.875rem;transition: background-color var(--transition-fast);}.pagination a:hover{background-color: var(--color-box-bg-shaded);}.pagination .current,.pagination .active{background-color: var(--color-fg);color: var(--color-bg);font-weight: 600;}.btn{display: inline-flex;align-items: center;gap: 0.4rem;transition: all var(--transition-fast);}.btn-rounded{border-radius: var(--radius-md);}.btn-pill{border-radius: var(--radius-full);}.btn-sm{padding: 6px 14px;font-size: 0.875rem;}.btn-secondary{background-color: var(--color-button-bg-shaded);border-color: var(--color-box-border);color: var(--color-fg);}.btn-secondary:hover{background-color: var(--color-box-border);}.btn-primary{background-color: var(--color-button-bg-accent);border: 1px solid var(--color-button-bg-accent);color: var(--color-button-fg-accent);}.btn-primary:hover{background-color: var(--color-button-bg-accent-hover);border-color: var(--color-button-bg-accent-hover);}.btn-danger{background-color: var(--color-fg-negative);border: 1px solid var(--color-fg-negative);color: #ffffff;}.btn-danger:hover{background-color: var(--color-button-bg-danger-hover);border-color: var(--color-button-bg-danger-hover);}.btn-outline,.btn-outline-primary,.btn-outline-secondary{background-color: transparent;border: 1px solid var(--color-box-border);transition: all var(--transition-fast);}.btn-outline:hover,.btn-outline-primary:hover,.btn-outline-secondary:hover{background-color: var(--color-box-bg-shaded);}.btn-outline,.btn-outline-primary{color: var(--color-fg);}.btn-outline-secondary{color: var(--opacity-fg-67);}.btn-outline-primary:hover{border-color: var(--color-fg);}.btn-outline-secondary:hover{color: var(--color-fg);}.btn-outline{padding: 10px 24px;font-weight: 500;}.btn-accent{background-color: var(--color-button-bg-accent);color: var(--color-button-fg-accent);border: 1px solid var(--color-button-bg-accent);padding: 10px 24px;font-weight: 600;}.btn-accent:hover{opacity: 0.9;}.form-input-wide{width: 100%;max-width: 600px;display: block;}.form-actions{margin-top: 1.5rem;display: flex;gap: 1rem;}.form-field-group{margin-bottom: 1.5rem;}.form-field-group label{display: block;margin-bottom: 0.5rem;font-weight: 500;font-size: 0.9375rem;}.form-field-hint-inline{color: var(--opacity-fg-54);font-size: 0.8125rem;margin-left: 0.5rem;}.form-error-text{display: block;margin-top: 0.375rem;font-size: 0.8125rem;color: var(--color-fg-negative);}.form-input-wide.is-danger{border-color: var(--color-fg-negative);}.validation-errors-list{margin-top: 0.5rem;padding-left: 1.25rem;margin-bottom: 0;color: var(--color-fg-negative);font-size: 0.875rem;}.tags-container{display: flex;flex-wrap: wrap;gap: 0.5rem;margin-top: 0.5rem;}.tag-checkbox{display: inline-flex;align-items: center;gap: 0.4rem;background-color: var(--color-tag-bg);border: 1px solid var(--color-box-border);border-radius: var(--radius-full);padding: 0.4rem 0.875rem;cursor: pointer;font-size: 0.875rem;text-decoration: none;color: var(--color-fg);transition: all var(--transition-fast);}.tag-checkbox:hover{background-color: var(--color-button-bg-shaded);border-color: var(--color-fg);}.tag-checkbox:has(input:checked){background-color: var(--color-fg);color: var(--color-bg);border-color: var(--color-fg);font-weight: 500;}.notifications-page{margin-top: 1rem;}.notifications-header{display: flex;justify-content: space-between;align-items: center;margin-bottom: 1.5rem;padding-bottom: 1rem;border-bottom: 1px solid var(--color-fg-shape);}.notifications-header h2{margin: 0;}ol.notification-list{padding: 0;list-style: none;margin: 0;}.notification-item{border-bottom: 1px solid var(--color-fg-shape);}.notification-link{display: flex;gap: 1rem;padding: 1rem 0.5rem;color: var(--color-fg);text-decoration: none;transition: background-color var(--transition-fast);}.notification-link:hover{background-color: var(--color-box-bg-shaded);}.notification-icon{width: 40px;height: 40px;flex-shrink: 0;border-radius: 50%;background-color: var(--color-box-bg-shaded);display: flex;align-items: center;justify-content: center;font-size: 1.1rem;}.notification-body{flex: 1;min-width: 0;}.notification-sender{font-weight: 600;margin-right: 0.25rem;}.notification-action{color: var(--opacity-fg-67);font-size: 0.875rem;}.notification-time{color: var(--opacity-fg-54);font-size: 0.8125rem;}.notification-unread{background-color: var(--color-flash-bg-notice);}.hint{color: var(--opacity-fg-54);font-style: italic;font-size: 0.875rem;line-height: 1.5;}.clear{clear: both;}.delete,.red,.is-link.red{color: var(--color-fg-negative);}.delete:hover{opacity: 0.8;}.green{color: var(--color-fg-affirmative);}.bold{font-weight: 700;}.mb1{margin-bottom: 1rem;}.mt2{margin-top: 1rem;}.mt3{margin-top: 1.5rem;}.my3{margin: 1.5rem 0;}.inline-form{display: inline;}.flex{display: flex;}.gap{gap: 0.75rem;}.flex-end{justify-content: flex-end;}.justify-between{justify-content: space-between;}.v-center{align-items: center;}.hidden{display: none;}.d-inline{display: inline;}.right{float: right;}img.avatar{border-radius: 50%;vertical-align: middle;}.rss-link{color: var(--color-rss);font-size: 0.875rem;padding: 3px 8px;border-radius: var(--radius-sm);}.rss-link:hover{background: var(--color-rss-hover-bg);}.editorjs-custom-wrapper{border: 1px solid var(--color-box-border);border-radius: var(--radius-md);min-height: 300px;padding: 1rem;background-color: var(--color-box-bg);transition: border-color var(--transition-fast), box-shadow var(--transition-fast);}.editorjs-custom-wrapper:focus-within{border-color: var(--color-box-border-focus);box-shadow: 0 0 0 3px rgba(41, 41, 41, 0.08);}.story-card--has-new{border-left: 3px solid var(--color-fg-accent);padding-left: 1rem;}.story_content pre,.comment_text pre{background-color: var(--color-box-bg-shaded);border: 1px solid var(--color-fg-shape);border-radius: var(--radius-lg);padding: 1.25rem 1.5rem;margin: 1.5rem 0;overflow-x: auto;font-family: var(--font-mono);font-size: 0.9375rem;line-height: 1.6;color: var(--color-fg);-webkit-overflow-scrolling: touch;}.story_content pre code,.comment_text pre code{background: none;padding: 0;border-radius: 0;font-size: inherit;color: inherit;font-family: inherit;white-space: pre;word-break: normal;word-wrap: normal;}.story_content code,.comment_text code{background-color: var(--color-box-bg-shaded);padding: 0.125rem 0.375rem;border-radius: var(--radius-sm);font-family: var(--font-mono);font-size: 0.88em;color: var(--color-fg-accent);border: 1px solid var(--color-fg-shape);}pre .copy-button{position: absolute;top: 0.5rem;right: 0.5rem;padding: 4px 8px;font-size: 0.75rem;background: var(--color-box-bg);border: 1px solid var(--color-fg-shape);border-radius: var(--radius-sm);cursor: pointer;opacity: 0;transition: opacity var(--transition-fast);}pre:hover .copy-button{opacity: 1;}.staff-pick-badge{display: inline-flex;align-items: center;justify-content: center;font-size: 0.875rem;margin-right: 0.375rem;vertical-align: middle;line-height: 1;animation: staff-pick-pop 0.4s ease-out;}.article-header h1 .staff-pick-badge{font-size: 1.5rem;margin-right: 0.5rem;}li.story .staff-pick-badge{font-size: 0.875rem;margin-right: 0.25rem;}@keyframes staff-pick-pop{0%{transform: scale(0);opacity: 0;} 50%{transform: scale(1.2);} 100%{transform: scale(1);opacity: 1;}}.filter-header{margin-bottom: 2rem;padding-bottom: 1.5rem;border-bottom: 1px solid var(--color-fg-shape);}.filter-header__hint{color: var(--opacity-fg-67);font-size: 0.9375rem;margin: 0 0 0.75rem;line-height: 1.5;}.filter-header__reset{display: inline-block;color: var(--color-fg-link);text-decoration: none;font-size: 0.875rem;font-weight: 500;padding: 4px 12px;border: 1px solid var(--color-box-border);border-radius: var(--radius-full);transition: all var(--transition-fast);}.filter-header__reset:hover{background-color: var(--color-box-bg-shaded);border-color: var(--color-fg);}.empty-state{text-align: center;padding: 3rem 1rem;margin: 2rem 0;color: var(--opacity-fg-67);}.empty-state h2{font-family: var(--font-sans);font-size: 1.5rem;font-weight: 700;margin: 0 0 0.75rem;color: var(--color-fg);}.empty-state p{font-size: 1rem;line-height: 1.55;margin: 0 0 1.5rem;}.empty-state__actions{display: flex;gap: 0.75rem;justify-content: center;flex-wrap: wrap;}.empty-state--subscribed{background-color: var(--color-box-bg-shaded);border-radius: var(--radius-lg);padding: 3rem 2rem;}.feed-section{margin-bottom: 3rem;padding-bottom: 2rem;}.feed-section:last-child{border-bottom: none;}.section-header{margin-bottom: 1.5rem;}.section-subtitle{font-size: 0.9375rem;color: var(--opacity-fg-54);margin: 0;}.story-list{display: flex;flex-direction: column;}.story-list .story{padding: 1.5rem 0;border-bottom: 1px solid var(--color-fg-shape);}.story-list .story:first-child{padding-top: 0;}.story-list .story:last-child{border-bottom: none;}.home-grid{display: grid;grid-template-columns: 1fr 380px;gap: 60px;align-items: start;max-width: 100%;}.home-grid__main{min-width: 0;max-width: 720px;}.home-grid__sidebar{position: sticky;top: 80px;max-height: calc(100vh - 100px);padding-right: 8px;}.home-grid__sidebar::-webkit-scrollbar{width: 6px;}.home-grid__sidebar::-webkit-scrollbar-track{background: transparent;}.home-grid__sidebar::-webkit-scrollbar-thumb{background-color: var(--color-fg-shape);border-radius: var(--radius-sm);}.sidebar-section{padding: 1.25rem 0;border-bottom: 1px solid var(--color-fg-shape);}.sidebar-section:first-child{padding-top: 0;}.sidebar-section:last-child{border-bottom: none;}.sidebar-header{margin-bottom: 1rem;}.section-title,.sidebar-title{font-family: var(--font-sans);font-size: 0.8125rem;font-weight: 700;text-transform: uppercase;letter-spacing: 0.08em;margin: 0;color: var(--opacity-fg-67);}.sidebar-text{font-size: 0.9375rem;line-height: 1.5;color: var(--opacity-fg-67);margin: 0 0 1rem;}.sidebar-section--trending .trending-list{list-style: none;padding: 0;margin: 0;}.sidebar-section--trending .trending-item{display: flex;gap: 1rem;padding: 0.875rem 0;border-bottom: 1px solid var(--color-fg-shape);}.sidebar-section--trending .trending-item:last-child{border-bottom: none;}.sidebar-section--trending .trending-number{font-family: var(--font-serif);font-size: 1.75rem;font-weight: 700;color: var(--opacity-fg-40);line-height: 1;min-width: 2rem;flex-shrink: 0;}.sidebar-section--trending .trending-content{flex: 1;min-width: 0;}.sidebar-section--trending .trending-title{font-family: var(--font-sans);font-size: 0.9375rem;font-weight: 600;line-height: 1.4;color: var(--color-fg);text-decoration: none;display: block;margin-bottom: 0.375rem;}.sidebar-section--trending .trending-title:hover{text-decoration: underline;}.sidebar-section--trending .trending-meta{font-size: 0.8125rem;color: var(--opacity-fg-54);display: flex;gap: 0.375rem;flex-wrap: wrap;}.sidebar-section--trending .trending-author{color: var(--opacity-fg-67);text-decoration: none;font-weight: 500;}.sidebar-section--trending .trending-author:hover{text-decoration: underline;}.staff-pick-compact__title,.staff-pick-card__title{font-family: var(--font-sans);font-weight: 600;line-height: 1.35;margin: 0 0 0.375rem;letter-spacing: -0.005em;}.staff-pick-compact__title a,.staff-pick-card__title a{color: var(--color-fg);text-decoration: none;}.staff-pick-compact__title a:hover,.staff-pick-card__title a:hover{text-decoration: underline;}.staff-pick-compact__meta,.staff-pick-card__meta{font-size: 0.8125rem;color: var(--opacity-fg-54);display: flex;align-items: center;gap: 0.375rem;flex-wrap: wrap;}.staff-pick-compact__meta a,.staff-pick-card__meta a{color: var(--opacity-fg-67);text-decoration: none;font-weight: 500;}.staff-pick-compact__meta a:hover,.staff-pick-card__meta a:hover{text-decoration: underline;}.staff-pick-compact__divider,.staff-pick-card__divider{color: var(--opacity-fg-40);}.staff-pick-compact__image,.staff-pick-card__image{display: block;border-radius: var(--radius-md);overflow: hidden;aspect-ratio: 16 / 9;background-color: var(--color-box-bg-shaded);}.staff-pick-compact__image img,.staff-pick-card__image img{width: 100%;height: 100%;object-fit: cover;transition: transform 0.3s ease;display: block;}.staff-pick-compact__title{font-size: 1rem;}.staff-pick-card__title{font-size: 1.25rem;font-weight: 700;}.staff-pick-compact__image{margin-bottom: 0.75rem;}.staff-pick-card__image{border-radius: 0;}.staff-pick-compact:hover .staff-pick-compact__image img{transform: scale(1.03);}.staff-pick-card:hover .staff-pick-card__image img{transform: scale(1.05);}.staff-picks-list{display: flex;flex-direction: column;gap: 0;}.staff-pick-compact{padding: 1rem 0;border-bottom: 1px solid var(--color-fg-shape);}.staff-pick-compact:first-child{padding-top: 0;}.staff-pick-compact:last-child{border-bottom: none;padding-bottom: 0;}.sidebar-tags{display: flex;flex-wrap: wrap;gap: 0.5rem;}.sidebar-tags .tag{font-size: 0.8125rem;padding: 4px 12px;margin: 0;}.sidebar-section--subscribe{background-color: var(--color-box-bg-shaded);margin: 0 -16px;padding: 24px 16px;border-radius: var(--radius-lg);border-bottom: none;}.sidebar-section--subscribe .sidebar-title{margin-bottom: 0.5rem;}.sidebar-section--subscribe .sidebar-text{margin-bottom: 1.25rem;}.sidebar-actions{display: flex;gap: 0.5rem;flex-wrap: wrap;}.staff-picks-page{padding: 2rem 0 4rem;}.staff-picks-page__header{text-align: center;margin-bottom: 3rem;padding-bottom: 2rem;border-bottom: 1px solid var(--color-fg-shape);}.staff-picks-page__title{font-family: var(--font-serif);font-size: 2.5rem;font-weight: 700;letter-spacing: -0.022em;margin: 0 0 0.75rem;color: var(--color-fg);}.staff-picks-page__subtitle{font-size: 1.0625rem;color: var(--opacity-fg-67);margin: 0 0 0.5rem;max-width: 600px;margin-left: auto;margin-right: auto;line-height: 1.55;}.staff-picks-page__count{font-size: 0.875rem;color: var(--opacity-fg-54);margin: 0;font-style: italic;}.staff-picks-page__grid{display: grid;grid-template-columns: repeat(3, 1fr);gap: 2rem;}.staff-pick-card{border: 1px solid var(--color-fg-shape);border-radius: var(--radius-lg);overflow: hidden;background-color: var(--color-box-bg);transition: box-shadow 0.25s ease, transform 0.25s ease;display: flex;flex-direction: column;}.staff-pick-card:hover{box-shadow: var(--shadow-lg);transform: translateY(-2px);}.staff-pick-card__content{padding: 1.25rem 1.5rem 1.5rem;display: flex;flex-direction: column;gap: 0.75rem;flex: 1;}.staff-pick-card__avatar{width: 20px;height: 20px;border-radius: 50%;object-fit: cover;}.staff-pick-card__author{color: var(--opacity-fg-67);text-decoration: none;font-weight: 600;}.staff-pick-card__author:hover{text-decoration: underline;}.staff-pick-card__excerpt{font-family: var(--font-serif);font-size: 0.9375rem;line-height: 1.55;color: var(--opacity-fg-84);overflow: hidden;display: -webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical;}.staff-pick-card__excerpt p{margin: 0.25rem 0;}.staff-pick-card__tags{display: flex;flex-wrap: wrap;gap: 0.375rem;}.staff-pick-card__tags .tag{font-size: 0.75rem;padding: 2px 8px;margin: 0;}.staff-pick-card__footer{display: flex;align-items: center;gap: 1rem;font-size: 0.8125rem;color: var(--opacity-fg-54);margin-top: auto;padding-top: 0.75rem;border-top: 1px solid var(--color-fg-shape);flex-wrap: wrap;}.staff-pick-card__comments,.staff-pick-card__score,.staff-pick-card__picked{display: inline-flex;align-items: center;gap: 0.25rem;text-decoration: none;color: var(--opacity-fg-54);font-weight: 500;}.staff-pick-card__comments:hover{color: var(--color-fg);}.staff-pick-card__picked{margin-left: auto;color: var(--color-fg-accent);font-weight: 600;}.scroll-to-top{position: fixed;bottom: 32px;right: 32px;width: 48px;height: 48px;border-radius: 50%;border: 1px solid var(--color-fg-shape);background-color: var(--color-box-bg);color: var(--color-fg);cursor: pointer;display: flex;align-items: center;justify-content: center;box-shadow: var(--shadow-md);opacity: 0;visibility: hidden;transform: translateY(10px);pointer-events: none;transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease, background-color var(--transition-fast), border-color var(--transition-fast);z-index: var(--z-floating);}.scroll-to-top.is-visible{opacity: 1;visibility: visible;transform: translateY(0);pointer-events: auto;}.scroll-to-top:hover{background-color: var(--color-box-bg-shaded);border-color: var(--color-fg);transform: translateY(-2px);box-shadow: var(--shadow-lg);}.scroll-to-top:active{transform: translateY(0);}.scroll-to-top svg{display: block;}.reading-progress{position: fixed;top: 0;left: 0;width: 100%;height: 3px;background-color: transparent;z-index: var(--z-progress);pointer-events: none;}.reading-progress__bar{height: 100%;width: 0%;background: linear-gradient(90deg, var(--color-fg-accent) 0%, var(--color-fg) 100%);border-radius: 0 2px 2px 0;transition: width 0.1s linear;will-change: width;}.editorjs-paywall__marker{display: flex;align-items: center;gap: 1rem;padding: 1rem 1.25rem;margin: 1.5rem 0;background: linear-gradient(135deg, #fff8e1, #ffecb3);border: 2px dashed #f59e0b;border-radius: var(--radius-lg);color: #78350f;}.editorjs-paywall__icon{font-size: 2rem;}.editorjs-paywall__text strong{display: block;margin-bottom: 0.25rem;font-size: 0.95rem;}.editorjs-paywall__text p{margin: 0;font-size: 0.8rem;opacity: 0.8;}.paywall-cta{position: relative;margin: 3rem 0;padding: 2.5rem 2rem;text-align: center;background-color: var(--color-box-bg-shaded);border-radius: var(--radius-lg);border: 1px solid var(--color-fg-shape);}.paywall-cta::before{content: '';position: absolute;top: -60px;left: 0;right: 0;height: 60px;background: linear-gradient(to bottom, transparent, var(--color-bg));pointer-events: none;}.paywall-cta__divider{display: flex;align-items: center;justify-content: center;margin-bottom: 1.5rem;}.paywall-cta__lock{font-size: 2.5rem;display: inline-flex;align-items: center;justify-content: center;width: 72px;height: 72px;border-radius: 50%;background-color: var(--color-box-bg);box-shadow: var(--shadow-md);}.paywall-cta__title{font-family: var(--font-sans);font-size: 1.5rem;font-weight: 700;letter-spacing: -0.02em;margin: 0 0 0.75rem;color: var(--color-fg);}.paywall-cta__text{font-size: 1rem;line-height: 1.55;color: var(--opacity-fg-67);max-width: 480px;margin: 0 auto 1.5rem;}.paywall-cta__actions{display: flex;gap: 0.75rem;justify-content: center;flex-wrap: wrap;}.paywall-cta__actions .btn{padding: 10px 28px;font-weight: 600;}.paywall-badge{display: inline-block;margin-right: 0.375rem;font-size: 0.85em;opacity: 0.7;}.icon-btn{display: inline-flex;align-items: center;justify-content: center;width: 36px;height: 36px;padding: 0;margin: 0;border: none;background: none;border-radius: 50%;color: var(--opacity-fg-54);cursor: pointer;flex-shrink: 0;transition: all 0.2s ease;}.icon-btn:hover{background-color: var(--color-box-bg-shaded);color: var(--color-fg);}.icon-btn:active{transform: scale(0.92);}.icon-btn:focus-visible{outline: 2px solid var(--color-fg-accent);outline-offset: 2px;}.icon-btn:disabled{opacity: 0.4;cursor: not-allowed;}.icon-btn svg{display: block;width: 20px;height: 20px;transition: all 0.2s ease;}.icon-btn.is-active{color: var(--color-fg-accent);}.icon-btn.is-active svg{fill: currentColor;}.icon-btn.is-active:hover{color: var(--color-fg);background-color: var(--color-box-bg-shaded);}.icon-btn--danger.is-active{color: var(--color-fg-negative);}.icon-btn--success.is-active{color: var(--color-fg-affirmative);}@keyframes icon-pop{0%{transform: scale(1);} 50%{transform: scale(1.25);} 100%{transform: scale(1);}}.icon-btn.just-toggled svg{animation: icon-pop 0.3s ease;}.icon-actions{display: inline-flex;align-items: center;gap: 4px;}.icon-actions > form + form{position: relative;}.icon-actions > form + form::before{content: '';position: absolute;left: -2px;top: 50%;transform: translateY(-50%);width: 1px;height: 16px;background-color: var(--color-fg-shape);}.action-link{display: inline-flex;align-items: center;gap: 0.375rem;padding: 0;margin: 0;border: none;background: none;font: inherit;font-size: 0.8125rem;font-weight: 500;color: var(--opacity-fg-67);cursor: pointer;text-decoration: none;transition: color 0.2s ease;line-height: 1;}.action-link:hover{color: var(--color-fg);text-decoration: underline;text-underline-offset: 2px;}.action-link--danger{color: var(--color-fg-negative);opacity: 0.8;}.action-link--danger:hover{color: var(--color-fg-negative);opacity: 1;}.action-link--restore{color: var(--color-fg-affirmative);opacity: 0.8;}.action-link--restore:hover{color: var(--color-fg-affirmative);opacity: 1;}.action-link--neutral{color: var(--opacity-fg-67);}.action-link--neutral:hover{color: var(--color-fg);}.action-link:disabled{opacity: 0.4;cursor: not-allowed;text-decoration: none;}[data-theme="dark"] header{background-color: rgba(18, 18, 18, 0.92);}[data-theme="dark"] .theme-toggle .icon-sun{display: inline-block;}[data-theme="dark"] .theme-toggle .icon-moon{display: none;}[data-theme="dark"] .story_content pre,[data-theme="dark"] .comment_text pre{background-color: #1e1e1e;border-color: #333;}[data-theme="dark"] .story_content code,[data-theme="dark"] .comment_text code{background-color: #2a2a2a;color: #e06c75;}[data-theme="dark"] .staff-pick-badge{filter: brightness(0.9);}[data-theme="dark"] .editorjs-paywall__marker{background: linear-gradient(135deg, #3a2f10, #4a3a15);border-color: #d97706;color: #fbbf24;}[data-theme="dark"] .scroll-to-top{box-shadow: 0 2px 12px rgba(0, 0, 0, 0.4);}[data-theme="dark"] .reading-progress__bar{background: linear-gradient(90deg, var(--color-fg-accent) 0%, rgb(220 220 220) 100%);}[data-theme="dark"] .icon-btn.is-active{color: #60a5fa;}[data-theme="dark"] .icon-btn--danger.is-active{color: #f87171;}@media (max-width: 1240px){main .content.content-wide{max-width: 100%;}}@media (min-width: 768px){.editorjs-image{margin: 2.5rem 0;} .editorjs-image--background{padding: 40px;border-radius: var(--radius-md);} .editorjs-image--background img{max-height: 500px;} .editorjs-image--stretched{width: 99vw;position: relative;left: 50%;right: 50%;margin-left: -50vw;margin-right: -50vw;} .editorjs-image--stretched img{width: 100%;max-width: 1100px;margin: 0 auto;} .editorjs-image figcaption{font-size: 0.9rem;margin-top: 12px;}}@media (max-width: 1024px){.home-grid{grid-template-columns: 1fr;gap: 40px;} .home-grid__main{max-width: 100%;} .home-grid__sidebar{position: static;max-height: none;border-top: 1px solid var(--color-fg-shape);padding-top: 30px;padding-right: 0;} .staff-picks-page__grid{grid-template-columns: repeat(2, 1fr);gap: 1.5rem;} .staff-picks-page__title{font-size: 2rem;}}@media (max-width: 768px){.staff-picks-page__grid{grid-template-columns: 1fr;gap: 1.25rem;} .staff-picks-page__title{font-size: 1.75rem;} .staff-picks-page__subtitle{font-size: 0.9375rem;} .staff-pick-card__content{padding: 1rem 1.25rem 1.25rem;} .staff-pick-card__title{font-size: 1.125rem;} .filter-header__title{font-size: 1.5rem;}}@media (max-width: 640px){main .content, article, .comment_form_container, ol.comments{padding-left: 20px;padding-right: 20px;} main .content.content-wide{padding: 0 16px;} main .content.content-full{padding: 0 16px;} .home-grid{gap: 30px;} .article-header h1{font-size: 1.875rem;} .story_content, .story_content p{font-size: 1.125rem;} li .link a.title{font-size: 1.25rem;} .profile-header{flex-direction: column;gap: 1rem;} .profile-avatar-large{width: 80px;height: 80px;} .profile-username{font-size: 1.5rem;} .navbar-container{padding: 0 16px;flex-wrap: wrap;height: auto;min-height: 60px;padding-block: 8px;} .navbar-links{justify-content: flex-start;flex-wrap: wrap;gap: 0.75rem;margin-top: 0.5rem;font-size: 0.8125rem;} .navbar-user-dropdown-container{margin-left: auto;} ol.comments ol.comments{margin-left: 0.75rem;padding-left: 0.75rem;} li.story{padding: 1.5rem 0;} .header-notification-badge{font-size: 0.6rem;min-width: 14px;padding: 2px 4px;} .sidebar-section--trending .trending-number{font-size: 1.375rem;min-width: 1.5rem;} .sidebar-section--trending .trending-title{font-size: 0.875rem;} .scroll-to-top{bottom: 20px;right: 20px;width: 42px;height: 42px;} .scroll-to-top svg{width: 18px;height: 18px;} .paywall-cta{padding: 2rem 1.25rem;} .paywall-cta__title{font-size: 1.25rem;} .icon-btn{width: 32px;height: 32px;} .icon-btn svg{width: 18px;height: 18px;} .story_content pre, .comment_text pre{padding: 1rem;font-size: 0.875rem;} .mb-none{display: none;}}@media print{header, footer, .voters, .comment_actions, .comment_form_container, .scroll-to-top, .reading-progress{display: none !important;} body{font-size: 11pt;} a{color: #000;text-decoration: underline;}}.story-actions-bar{display: flex;align-items: center;gap: 0.75rem;padding: 0.75rem 0;margin-top: 1.5rem;border-top: 1px solid var(--color-fg-shape);border-bottom: 1px solid var(--color-fg-shape);}.story-actions-bar .divider{color: var(--opacity-fg-40);}.story-menu-wrapper{position: relative;display: inline-flex;}.story-menu-trigger{}.story-menu-dropdown{display: none;position: absolute;top: calc(100% + 8px);right: 0;min-width: 240px;background-color: var(--color-box-bg);border: 1px solid var(--color-box-border);border-radius: var(--radius-md);box-shadow: var(--shadow-md);z-index: var(--z-dropdown);padding: 0.5rem 0;animation: story-menu-appear 0.15s ease-out;}.story-menu-dropdown.active{display: block;}@keyframes story-menu-appear{from{opacity: 0;transform: translateY(-4px);} to{opacity: 1;transform: translateY(0);}}.story-menu-wrapper{position: relative;display: inline-flex;}.story-menu-dropdown{display: none;position: absolute;top: calc(100% + 8px);right: 0;min-width: 240px;background-color: var(--color-box-bg);border: 1px solid var(--color-box-border);border-radius: var(--radius-md);box-shadow: var(--shadow-md);z-index: var(--z-dropdown);padding: 0.5rem 0;animation: story-menu-appear 0.15s ease-out;}.story-menu-dropdown.active{display: block;}@keyframes story-menu-appear{from{opacity: 0;transform: translateY(-4px);} to{opacity: 1;transform: translateY(0);}}.story-menu-item{display: flex;align-items: center;gap: 0.75rem;width: 100%;padding: 0.6rem 1rem;color: var(--color-fg);font-size: 0.9rem;font-weight: 400;text-decoration: none;background: none;border: none;cursor: pointer;text-align: left;font-family: inherit;transition: background-color var(--transition-fast);}.story-menu-item:hover{background-color: var(--color-box-bg-shaded);}.story-menu-item__icon{flex-shrink: 0;font-size: 1rem;width: 20px;text-align: center;}.story-menu-item--danger{color: var(--color-fg-negative);}.story-menu-item--danger:hover{background-color: var(--color-flash-bg-error);}.story-menu-item--success{color: var(--color-fg-affirmative);}.story-menu-item--success:hover{background-color: var(--color-flash-bg-success);}.story-menu-divider{height: 1px;background-color: var(--color-box-border);margin: 0.4rem 0;}.story-menu-form{margin: 0;display: block;}@media (max-width: 640px){.story-menu-dropdown{position: fixed;bottom: 0;left: 0;right: 0;top: auto;border-radius: var(--radius-lg) var(--radius-lg) 0 0;max-height: 70vh;overflow-y: auto;}}.summary-container{margin: 1em 0;padding: 1em;background: var(--color-box-bg-shaded, #f8f9fa);border: 1px solid var(--color-box-border, #dee2e6);border-radius: 3px;}.social-auth{margin: 1.5rem 0;}.social-auth__divider{text-align: center;margin: 1rem 0;color: #888;font-size: 0.875rem;}.social-auth__divider::before,.social-auth__divider::after{content: '';display: inline-block;width: 30%;height: 1px;background: #ddd;vertical-align: middle;margin: 0 0.5rem;}.social-auth__buttons{display: flex;gap: 0.75rem;justify-content: center;flex-wrap: wrap;}.btn-social{display: inline-flex;align-items: center;gap: 0.5rem;padding: 0.625rem 1.25rem;border-radius: 8px;font-weight: 500;text-decoration: none;transition: opacity 0.2s;}.btn-social:hover{opacity: 0.9;}.btn-yandex{background: #FC3F1D;color: white;}.btn-vk{background: #0077FF;color: white;}.lightbox-trigger{position: relative;display: block;cursor: zoom-in;line-height: 0;}.lightbox-trigger img{max-width: 100%;height: auto;display: block;transition: transform 0.3s ease;}.lightbox-trigger:hover img{transform: scale(1.02);}.lightbox-icon{position: absolute;top: 12px;right: 12px;width: 36px;height: 36px;padding: 8px;background: rgba(255, 255, 255, 0.95);border: none;border-radius: 50%;cursor: pointer;opacity: 0;transform: scale(0.8);transition: all 0.2s ease;box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);display: flex;align-items: center;justify-content: center;color: #333;}.lightbox-icon svg{width: 18px;height: 18px;}.lightbox-trigger:hover .lightbox-icon{opacity: 1;transform: scale(1);}.lightbox-icon:hover{background: #fff;transform: scale(1.1);}.lightbox-overlay{position: fixed;inset: 0;background: rgba(255, 255, 255, 0.97);z-index: 10000;display: flex;align-items: center;justify-content: center;opacity: 0;visibility: hidden;transition: opacity 0.3s ease, visibility 0.3s ease;}.lightbox-overlay.is-open{opacity: 1;visibility: visible;}@media (prefers-color-scheme: dark){.lightbox-overlay{background: rgba(20, 20, 20, 0.97);}}.lightbox-content{position: relative;max-width: 90vw;max-height: 90vh;display: flex;flex-direction: column;align-items: center;gap: 1rem;}.lightbox-image{max-width: 90vw;max-height: 80vh;object-fit: contain;box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);transition: opacity 0.3s ease;user-select: none;-webkit-user-drag: none;}.lightbox-caption{color: #555;font-size: 0.95rem;text-align: center;max-width: 80%;line-height: 1.5;}@media (prefers-color-scheme: dark){.lightbox-caption{color: #aaa;}}.lightbox-close{position: absolute;top: 20px;right: 20px;width: 44px;height: 44px;padding: 10px;background: rgba(0, 0, 0, 0.05);border: none;border-radius: 50%;cursor: pointer;color: #333;transition: background 0.2s ease;display: flex;align-items: center;justify-content: center;z-index: 2;}.lightbox-close svg{width: 20px;height: 20px;}.lightbox-close:hover{background: rgba(0, 0, 0, 0.1);}@media (prefers-color-scheme: dark){.lightbox-close{background: rgba(255, 255, 255, 0.1);color: #fff;} .lightbox-close:hover{background: rgba(255, 255, 255, 0.2);}}.lightbox-spinner{position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);display: none;}.spinner{width: 40px;height: 40px;border: 3px solid rgba(0, 0, 0, 0.1);border-top-color: #333;border-radius: 50%;animation: spin 0.8s linear infinite;}@keyframes spin{to{transform: rotate(360deg);}}@media (prefers-color-scheme: dark){.spinner{border-color: rgba(255, 255, 255, 0.1);border-top-color: #fff;}}@media (max-width: 768px){.lightbox-icon{opacity: 1;transform: scale(1);} .lightbox-close{top: 12px;right: 12px;} .lightbox-image{max-width: 95vw;max-height: 75vh;}}.ce-block .image-tool__image{position: relative;min-height: 100px;}.ce-block .image-tool__image img[src=""],.ce-block .image-tool__image img:not([src]),.ce-block .image-tool__image img.broken{display: none !important;}.ce-block .image-tool__image::after{content: '';display: none;}.ce-block .image-tool__image.has-error::after{content: '⚠️ Изображение не найдено. Кликните, чтобы удалить блок.';display: flex;align-items: center;justify-content: center;background: #fee;border: 2px dashed #c33;border-radius: 8px;padding: 20px;color: #c33;font-size: 14px;text-align: center;cursor: pointer;min-height: 100px;}.ce-block .image-tool__image.has-error:hover::after{background: #fdd;border-color: #900;}.ce-block .image-tool__image.has-error ~ .image-tool__caption{display: none;}.ce-block .image-tool__image.has-error::before{content: '❌';position: absolute;top: 10px;right: 10px;font-size: 24px;z-index: 10;}.friend-links-modal{display: none;position: fixed;inset: 0;z-index: var(--z-modal, 1000);align-items: center;justify-content: center;}.friend-links-modal.is-open{display: flex;}.friend-links-modal__backdrop{position: absolute;inset: 0;background-color: rgba(0, 0, 0, 0.5);cursor: pointer;}.friend-links-modal__content{position: relative;background-color: var(--color-box-bg);border: 1px solid var(--color-box-border);border-radius: var(--radius-lg);box-shadow: var(--shadow-lg);max-width: 600px;width: 90%;max-height: 80vh;overflow-y: auto;z-index: 1;}.friend-links-modal__header{display: flex;justify-content: space-between;align-items: center;padding: 1rem 1.25rem;border-bottom: 1px solid var(--color-box-border);}.friend-links-modal__header h3{margin: 0;font-size: 1.125rem;font-weight: 700;}.friend-links-modal__close{}.friend-links-modal__body{padding: 1.25rem;}.friend-links-modal__description{color: var(--opacity-fg-67);font-size: 0.9375rem;line-height: 1.5;margin: 0 0 1rem;}.friend-links-list{margin-top: 1rem;}.friend-link-item{padding: 0.875rem;border: 1px solid var(--color-box-border);border-radius: var(--radius-md);background-color: var(--color-box-bg-shaded);margin-bottom: 0.75rem;}.friend-link-item:last-child{margin-bottom: 0;}.friend-link-item__url{display: flex;gap: 0.5rem;margin-bottom: 0.5rem;}.friend-link-item__url input{flex: 1;font-size: 0.8125rem;padding: 0.375rem 0.625rem;border: 1px solid var(--color-box-border);border-radius: var(--radius-sm);background-color: var(--color-box-bg);color: var(--color-fg);font-family: var(--font-mono);}.friend-link-item__meta{display: flex;justify-content: space-between;align-items: center;font-size: 0.8125rem;color: var(--opacity-fg-54);}.friend-link-item__meta small{flex: 1;}.friend-link-item__meta .btn-delete{padding: 0.25rem 0.5rem;font-size: 0.75rem;}.notification{position: fixed;bottom: 20px;right: 20px;padding: 0.75rem 1.25rem;border-radius: var(--radius-md);color: #fff;font-size: 0.9375rem;font-weight: 500;z-index: var(--z-toast, 10000);animation: notification-slide-in 0.3s ease;box-shadow: var(--shadow-lg);}.notification--success{background-color: var(--color-fg-affirmative);}.notification--error{background-color: var(--color-fg-negative);}.notification--info{background-color: var(--color-fg-author);}@keyframes notification-slide-in{from{transform: translateX(100%);opacity: 0;} to{transform: translateX(0);opacity: 1;}}[data-theme="dark"] .friend-links-modal__backdrop{background-color: rgba(0, 0, 0, 0.7);}[data-theme="dark"] .friend-link-item{background-color: var(--color-box-bg-shaded);border-color: var(--color-box-border);}[data-theme="dark"] .friend-link-item__url input{background-color: var(--color-box-bg);border-color: var(--color-box-border);}@media (max-width: 640px){.friend-links-modal__content{width: 95%;max-height: 90vh;} .friend-link-item__url{flex-direction: column;} .friend-link-item__url input{width: 100%;} .notification{left: 16px;right: 16px;bottom: 16px;}}.comment-thread{position: relative;}.comment-header{display: flex;align-items: center;gap: 8px;}.collapse-toggle{cursor: pointer;user-select: none;color: #666;font-family: monospace;font-size: 14px;margin-bottom: 0.3em;border-radius: 3px;transition: background-color 0.2s;}.collapse-toggle:hover{background-color: #f0f0f0;color: #000;}.comment-thread.collapsed > .comment_body > .comment_text,.comment-thread.collapsed > .comment_body > .comment_actions,.comment-thread.collapsed > .comments{display: none;}.comment-thread.collapsed > .comment-header::after{content: " [+]";color: #888;font-size: 0.9em;font-family: monospace;}.collapsed-count{color: #0066cc;font-size: 0.85em;margin-left: 5px;margin-bottom: 0.3em;}.comment-thread.deleted{opacity: 0.6;}.comment.is-new{border-left: 3px solid #ff9800;background-color: #fff8e1;}.comment.is-new .comment-header{font-weight: 600;color: #000;}.comment.is-new:hover{background-color: #ffecb3;}.comment-head{display: flex;justify-content: space-between;align-items: center;margin-bottom: 15px;}.messages-list{list-style: none;padding: 0;margin: 0;}.message-item{display: block;padding: 0.75em 0;border-bottom: 1px solid var(--color-box-bg-shaded);text-decoration: none;color: var(--color-fg);}.message-item:hover{background-color: var(--color-box-bg-shaded);}.message-item.unread{background-color: var(--color-flash-bg-notice);}.message-item.unread:hover{background-color: var(--color-flash-bg-notice);opacity: 0.9;}.message-item-inner{display: flex;align-items: flex-start;gap: 0.75em;}.message-avatar{width: 32px;height: 32px;border-radius: 3px;object-fit: cover;flex-shrink: 0;}.message-avatar-placeholder{display: flex;align-items: center;justify-content: center;width: 32px;height: 32px;border-radius: 3px;background-color: var(--color-fg-accent);color: white;font-size: 0.9em;font-weight: bold;flex-shrink: 0;}.message-content{flex-grow: 1;min-width: 0;}.message-username{font-weight: bold;color: var(--color-fg);margin-bottom: 0.2em;}.message-preview{color: var(--opacity-fg-contrast-6);font-size: 0.9em;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}.message-preview-empty{color: var(--opacity-fg-contrast-4-5);font-style: italic;}.message-timestamp{color: var(--opacity-fg-contrast-4-5);font-size: 0.85em;flex-shrink: 0;margin-left: auto;}.dialog-header{display: flex;align-items: center;gap: 0.75em;margin-bottom: 1em;padding-bottom: 0.5em;border-bottom: 1px solid var(--color-fg-shape);}.dialog-back-link{color: var(--color-fg-link);text-decoration: none;font-size: 0.9em;}.dialog-back-link:hover{text-decoration: underline;}.dialog-avatar{width: 40px;height: 40px;border-radius: 3px;object-fit: cover;}.dialog-avatar-placeholder{display: flex;align-items: center;justify-content: center;width: 40px;height: 40px;border-radius: 3px;background-color: var(--color-fg-accent);color: white;font-size: 1.2em;font-weight: bold;}.dialog-title{font-weight: bold;color: var(--color-fg);}.dialog-pagination{text-align: center;margin: 1em 0;padding: 0.5em 0;}.dialog-load-older{color: var(--color-fg-link);text-decoration: none;font-size: 0.9em;}.dialog-load-older:hover{text-decoration: underline;}.dialog-pagination-status{color: var(--opacity-fg-contrast-4-5);font-size: 0.85em;font-style: italic;}.dialog-messages{margin: 1.5em 0;}.dialog-message{margin-bottom: 1em;padding: 0.5em 0;}.dialog-message.incoming{padding-left: 0;}.dialog-message.outgoing{padding-left: 2em;color: var(--opacity-fg-contrast-7-5);}.dialog-message-text{margin-bottom: 0.3em;word-wrap: break-word;}.dialog-message-time{color: var(--opacity-fg-contrast-4-5);font-size: 0.8em;}.dialog-empty{text-align: center;padding: 2em 0;color: var(--opacity-fg-contrast-6);font-style: italic;}.dialog-form{margin-top: 1.5em;padding-top: 1em;border-top: 1px solid var(--color-fg-shape);}.dialog-form-row{display: flex;gap: 0.5em;}.dialog-form-input{flex-grow: 1;}.dialog-form-button{flex-shrink: 0;}