@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Serif:wght@500;600&family=IBM+Plex+Sans:wght@400;500;600&display=swap";:root{--bg: #F3F4F5;--surface: #FFFFFF;--surface-2: #ECEEF0;--hover: #FAFBFB;--ink: #111418;--ink-2: #4A5159;--ink-3: #6B737B;--line: #DCE0E4;--line-2: #B4BBC2;--on-ink: #FFFFFF;--ink-hover: #262B31;--shadow-pop: 0 8px 24px rgba(17, 20, 24, .12);--accent: #9A6200;--accent-soft: #F6EDDC;--accent-line: #E2C994;--green: #2E7A4E;--green-soft: #E6F2EA;--green-line: #B9D9C5;--yellow: #E0A400;--yellow-soft: #FDF1C7;--yellow-line: #E8C34F;--red: #B3261E;--red-soft: #FBEAE8;--red-line: #EDBDB8;--font-head: "IBM Plex Serif", Georgia, "Times New Roman", serif;--font-text: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--radius: 3px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 64px;--width-page: 1200px;--width-side: 300px;--width-read: 660px;--height-nav: 56px;--ease: cubic-bezier(.2, 0, 0, 1);--dur: .15s;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0F1113;--surface: #171A1D;--surface-2: #1F2327;--hover: #1B1F22;--ink: #E7E9EB;--ink-2: #A9B0B7;--ink-3: #858D95;--line: #2A2F34;--line-2: #59616A;--on-ink: #0F1113;--ink-hover: #FFFFFF;--shadow-pop: 0 8px 24px rgba(0, 0, 0, .5);--accent: #E3AA4A;--accent-soft: #2B2213;--accent-line: #5A4520;--green: #5DBB86;--green-soft: #15271D;--green-line: #264A35;--yellow: #E8B53A;--yellow-soft: #2E2610;--yellow-line: #5A4817;--red: #F07A70;--red-soft: #2F1716;--red-line: #5C2A27;color-scheme:dark}}:root[data-theme=dark]{--bg: #0F1113;--surface: #171A1D;--surface-2: #1F2327;--hover: #1B1F22;--ink: #E7E9EB;--ink-2: #A9B0B7;--ink-3: #858D95;--line: #2A2F34;--line-2: #59616A;--on-ink: #0F1113;--ink-hover: #FFFFFF;--shadow-pop: 0 8px 24px rgba(0, 0, 0, .5);--accent: #E3AA4A;--accent-soft: #2B2213;--accent-line: #5A4520;--green: #5DBB86;--green-soft: #15271D;--green-line: #264A35;--yellow: #E8B53A;--yellow-soft: #2E2610;--yellow-line: #5A4817;--red: #F07A70;--red-soft: #2F1716;--red-line: #5C2A27;color-scheme:dark}.t-h1{font:600 34px/40px var(--font-head);letter-spacing:-.005em}.t-h1-case{font:600 36px/42px var(--font-head);letter-spacing:-.005em}.t-h2{font:600 21px/26px var(--font-head)}.t-title{font:600 17px/23px var(--font-head)}.t-section{font:600 12px/16px var(--font-text);letter-spacing:.1em;text-transform:uppercase}.t-read{font:400 16.5px/28px var(--font-text)}.t-body{font:400 14px/22px var(--font-text)}.t-small{font:400 13px/20px var(--font-text)}.t-meta{font:400 12.5px/19px var(--font-text);color:var(--ink-3)}.t-label{font:500 11px/16px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.t-code{font:500 13px/22px var(--font-mono);font-variant-numeric:tabular-nums}.t-figure{font:500 40px/40px var(--font-mono);letter-spacing:-.02em;font-variant-numeric:tabular-nums}*,*:before,*:after{box-sizing:border-box}body.os-root{margin:0;background:var(--bg);color:var(--ink);font:400 14px/22px var(--font-text);-webkit-font-smoothing:antialiased}.os-root :focus-visible{outline:2px solid var(--accent);outline-offset:2px}.os-link{color:var(--accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.os-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.os-nav{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.os-nav__in{max-width:var(--width-page);margin:0 auto;height:var(--height-nav);padding:0 var(--space-7);display:flex;align-items:center;gap:var(--space-8)}.os-brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.os-brand b{font:600 14px/1 var(--font-text);letter-spacing:.14em;text-transform:uppercase}.os-nav__links{display:flex;gap:28px;flex:1;min-width:0}.os-nav__links a{font:500 14px/var(--height-nav) var(--font-text);color:var(--ink-2);text-decoration:none;position:relative;white-space:nowrap}.os-nav__links a:hover,.os-nav__links a[aria-current=page]{color:var(--ink)}.os-nav__links a[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--ink)}.os-user{display:flex;align-items:center;gap:var(--space-3);font-size:13px;color:var(--ink-2)}.os-avatar{width:28px;height:28px;border:1px solid var(--line-2);border-radius:var(--radius);display:grid;place-items:center;font:500 11px var(--font-mono);color:var(--ink);background:var(--surface)}.os-page{max-width:var(--width-page);margin:0 auto;padding:var(--space-8) var(--space-7) var(--space-9);display:grid;grid-template-columns:minmax(0,1fr) var(--width-side);gap:var(--space-8)}.os-side{display:grid;gap:var(--space-4);align-content:start}.os-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-6)}.os-head h1{margin:6px 0 0}.os-lead{margin:var(--space-2) 0 0;color:var(--ink-2);max-width:560px}.os-crumbs{font-size:13px;color:var(--ink-3);display:flex;gap:var(--space-2);margin-bottom:var(--space-5)}.os-crumbs a{color:var(--ink-2);text-decoration:none}@media (max-width: 960px){.os-page{grid-template-columns:minmax(0,1fr);padding:var(--space-6) var(--space-4) var(--space-8)}.os-nav__in{padding:0 var(--space-4);gap:var(--space-5)}.os-head{flex-direction:column;align-items:flex-start}}.os-theme{display:inline-flex;border:1px solid var(--line-2);border-radius:var(--radius);overflow:hidden}.os-theme button{width:32px;height:28px;padding:0;border:0;border-left:1px solid var(--line);background:var(--surface);color:var(--ink-3);display:grid;place-items:center;cursor:pointer}.os-theme button:first-child{border-left:0}.os-theme button:hover{color:var(--ink)}.os-theme button[aria-pressed=true]{background:var(--surface-2);color:var(--ink)}.os-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:40px;padding:0 var(--space-5);border-radius:var(--radius);border:1px solid transparent;font:500 14px/1 var(--font-text);cursor:pointer;white-space:nowrap;text-decoration:none;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.os-btn--primary{background:var(--ink);color:var(--on-ink)}.os-btn--primary:hover{background:var(--ink-hover)}.os-btn--secondary{background:var(--surface);color:var(--ink);border-color:var(--line-2)}.os-btn--secondary:hover{border-color:var(--ink-2)}.os-btn--ghost{background:transparent;color:var(--ink-2)}.os-btn--ghost:hover{color:var(--ink);background:var(--surface-2)}.os-btn--danger{background:var(--surface);color:var(--red);border-color:var(--red-line)}.os-btn--s{height:32px;padding:0 var(--space-3);font-size:13px}.os-btn--block{width:100%}.os-btn:disabled{background:var(--surface-2);color:var(--ink-3);border-color:transparent;cursor:not-allowed}.os-seg{flex:none;display:inline-flex;border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);overflow:hidden}.os-seg button{border:0;border-left:1px solid var(--line);background:none;padding:0 14px;height:32px;font:500 13px var(--font-text);color:var(--ink-2);cursor:pointer;white-space:nowrap}.os-seg button:first-child{border-left:0}.os-seg button[aria-pressed=true]{background:var(--ink);color:var(--on-ink)}.os-filters{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center;margin-bottom:var(--space-4)}.os-select{height:32px;border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);padding:0 28px 0 12px;font:400 13px var(--font-text);color:var(--ink);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-3) 50%),linear-gradient(135deg,var(--ink-3) 50%,transparent 50%);background-position:right 14px center,right 10px center;background-size:4px 4px;background-repeat:no-repeat}.os-reg{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.os-reg__row{display:grid;grid-template-columns:48px minmax(0,1fr) 170px 48px;align-items:start;gap:0 var(--space-5);padding:18px var(--space-5);border-top:1px solid var(--line);color:inherit;text-decoration:none}.os-reg__row:first-child{border-top:0}.os-reg__row--head{padding-top:10px;padding-bottom:10px;background:var(--surface-2);border-bottom:1px solid var(--line)}a.os-reg__row:hover{background:var(--hover)}a.os-reg__row:hover .os-reg__title{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.os-reg__code{font:500 13px/22px var(--font-mono)}.os-reg__title{font:600 17px/23px var(--font-head)}.os-reg__teaser{margin-top:4px;color:var(--ink-2);font-size:13.5px;line-height:21px;max-width:560px}.os-reg__meta{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:10px;font-size:12.5px;color:var(--ink-3)}.os-reg__num{text-align:right;font:400 13px/22px var(--font-mono);color:var(--ink-2)}@media (max-width: 720px){.os-reg__row{grid-template-columns:40px minmax(0,1fr)}.os-reg__row>:nth-child(3){grid-column:2;margin-top:var(--space-2)}.os-reg__row>:nth-child(4),.os-reg__row--head{display:none}}.os-rank{font:500 14px/22px var(--font-mono);color:var(--ink)}.os-rank span{color:var(--ink-3);font-family:var(--font-text);font-size:12.5px;margin-left:6px}.os-status{display:inline-flex;align-items:center;gap:var(--space-2);font-size:13px;line-height:22px;color:var(--ink)}.os-status:before{content:"";width:7px;height:7px;flex:none;background:var(--line-2)}.os-status--open:before{background:var(--green)}.os-status--review:before{background:transparent;box-shadow:inset 0 0 0 1.5px var(--ink-2)}.os-status--published:before{background:var(--accent)}.os-status--closed{color:var(--ink-3)}.os-tag{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 var(--space-2);border-radius:var(--radius);font:500 12px/1 var(--font-text);border:1px solid var(--line-2);background:var(--surface);color:var(--ink-2);white-space:nowrap}.os-tag--green{color:var(--green);background:var(--green-soft);border-color:var(--green-line)}.os-tag--yellow{color:var(--ink);background:var(--yellow-soft);border-color:var(--yellow-line)}.os-tag--red{color:var(--red);background:var(--red-soft);border-color:var(--red-line)}.os-tag--blue{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-line)}.os-tags{display:flex;flex-wrap:wrap;gap:6px}.os-trend{font:500 13px var(--font-mono);color:var(--ink-3)}.os-trend--up{color:var(--green)}.os-trend--down{color:var(--red)}.os-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-5)}.os-box>h3{margin:0 0 14px;font:600 12px/16px var(--font-text);letter-spacing:.1em;text-transform:uppercase}.os-kv{display:grid;grid-template-columns:1fr auto;row-gap:var(--space-2);font-size:13px}.os-kv dt{color:var(--ink-2)}.os-kv dd{margin:0;font-family:var(--font-mono);text-align:right}.os-total{font:500 40px/40px var(--font-mono);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.os-total small{font-size:18px;color:var(--ink-3)}.os-axes{display:grid;gap:6px;margin-top:var(--space-4)}.os-axis{display:grid;grid-template-columns:44px 1fr 14px;gap:10px;align-items:center;font:500 11px var(--font-mono);color:var(--ink-2)}.os-axis__bar{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.os-axis__bar i{height:6px;background:var(--surface-2)}.os-axis__bar i.is-on{background:var(--ink)}.os-axis b{font-weight:500;color:var(--ink);text-align:right}.os-score-input{display:inline-grid;grid-template-columns:repeat(4,32px);border:1px solid var(--line-2);border-radius:var(--radius);overflow:hidden}.os-score-input button{height:32px;border:0;border-left:1px solid var(--line);background:var(--surface);color:var(--ink-2);font:500 13px var(--font-mono);cursor:pointer}.os-score-input button:first-child{border-left:0}.os-score-input button[aria-pressed=true]{background:var(--ink);color:var(--on-ink)}.os-ranks{display:grid;gap:6px;font-size:13px}.os-ranks div{display:grid;grid-template-columns:24px 1fr;color:var(--ink-2)}.os-ranks b{font:500 14px var(--font-mono);color:var(--ink)}.os-doc{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-8) 48px}.os-doc h1{margin:var(--space-2) 0 var(--space-5)}.os-doc p{font:400 16.5px/28px var(--font-text);margin:0 0 var(--space-4);max-width:var(--width-read)}.os-doc .os-question{border-top:1px solid var(--line);padding-top:var(--space-4);margin-top:var(--space-2);font-weight:500}@media (max-width: 720px){.os-doc{padding:var(--space-6) var(--space-5)}}.os-form{margin-top:var(--space-7);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-7) 48px;display:grid;gap:var(--space-6)}.os-form h2{margin:0}.os-field{display:grid;gap:6px}.os-field label{font:600 13px/18px var(--font-text)}.os-field__hint{font-size:12.5px;color:var(--ink-3)}.os-field__count{font:400 11px var(--font-mono);color:var(--ink-3);text-align:right}.os-field__error{font-size:12.5px;color:var(--red)}.os-input,.os-textarea{width:100%;font:400 15px/24px var(--font-text);color:var(--ink);border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);padding:8px 14px}.os-textarea{padding:12px 14px;min-height:96px;resize:vertical}.os-input:hover,.os-textarea:hover{border-color:var(--ink-3)}.os-field--error .os-input,.os-field--error .os-textarea{border-color:var(--red)}.os-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.os-actions__note{font-size:12.5px;color:var(--ink-3);margin-left:auto}.os-table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}.os-table{width:100%;border-collapse:collapse;font-size:14px}.os-table th{text-align:left;padding:10px var(--space-5);background:var(--surface-2);border-bottom:1px solid var(--line);font:500 11px/16px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap}.os-table td{padding:14px var(--space-5);border-bottom:1px solid var(--line)}.os-table tr:last-child td{border-bottom:0}.os-table .is-num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.os-table tr.is-me td{background:var(--accent-soft)}.os-note{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-4) var(--space-5)}.os-note__head{font:500 11px/16px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px;display:flex;justify-content:space-between}.os-note p{margin:0}@media (prefers-reduced-motion: reduce){.os-root *{transition:none!important}}.os-footer{background:var(--surface);border-top:1px solid var(--line);margin-top:auto}.os-footer__in{max-width:var(--width-page);margin:0 auto;padding:var(--space-8) var(--space-7) var(--space-6)}.os-footer__grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(5,minmax(0,1fr));gap:var(--space-7)}.os-footer__about p{margin:var(--space-3) 0 0;max-width:280px;font-size:13px;line-height:20px;color:var(--ink-3)}.os-footer__col h4{margin:0 0 var(--space-3);font:500 11px/16px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.os-footer__col ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.os-footer__col a{font-size:13.5px;line-height:20px;color:var(--ink-2);text-decoration:none}.os-footer__col a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.os-footer__col a.is-more{color:var(--ink);font-weight:500}.os-footer__bar{margin-top:var(--space-7);padding-top:var(--space-4);border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-3);font:400 12px/18px var(--font-mono);color:var(--ink-3)}@media (max-width: 960px){.os-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.os-footer__about{grid-column:1 / -1}.os-footer__in{padding:var(--space-7) var(--space-4) var(--space-5)}}.os-docs{max-width:var(--width-page);margin:0 auto;padding:var(--space-8) var(--space-7) var(--space-9);display:grid;grid-template-columns:220px minmax(0,1fr);gap:56px}.os-docs__nav{position:sticky;top:calc(var(--height-nav) + var(--space-6));align-self:start;display:grid;gap:var(--space-6)}.os-docs__group h4{margin:0 0 var(--space-2);font:500 11px/16px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.os-docs__group ul{list-style:none;margin:0;padding:0;display:grid}.os-docs__group a{display:block;padding:5px 0 5px 12px;border-left:2px solid var(--line);font-size:13.5px;line-height:20px;color:var(--ink-2);text-decoration:none}.os-docs__group a:hover{color:var(--ink);border-left-color:var(--line-2)}.os-docs__group a[aria-current=page]{color:var(--ink);font-weight:500;border-left-color:var(--ink)}@media (max-width: 960px){.os-docs{grid-template-columns:minmax(0,1fr);gap:var(--space-6);padding:var(--space-6) var(--space-4) var(--space-8)}.os-docs__nav{position:static;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}.os-article{max-width:var(--width-read);min-width:0}.os-article>h1{margin:6px 0 var(--space-3);font:600 34px/40px var(--font-head);letter-spacing:-.005em}.os-article .os-article__lead{margin:0 0 var(--space-7);font-size:16.5px;line-height:26px;color:var(--ink-2)}.os-article h2{margin:var(--space-8) 0 var(--space-3);font:600 21px/26px var(--font-head)}.os-article h3{margin:var(--space-6) 0 var(--space-2);font:600 17px/23px var(--font-head)}.os-article p,.os-article li{font-size:15.5px;line-height:26px}.os-article p{margin:0 0 var(--space-4)}.os-article ul,.os-article ol{margin:0 0 var(--space-4);padding-left:22px}.os-article li{margin-bottom:6px}.os-article li::marker{color:var(--ink-3)}.os-article strong{font-weight:600}.os-article a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}.os-article a:hover{text-decoration-thickness:2px}.os-article code{font:500 13px var(--font-mono);background:var(--surface-2);border-radius:var(--radius);padding:1px 5px}.os-article blockquote{margin:0 0 var(--space-5);padding:var(--space-4) var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.os-article blockquote:before{content:"Пример";display:block;margin-bottom:var(--space-2);font:500 11px/16px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.os-article blockquote p{margin:0 0 var(--space-3);font-size:14.5px;line-height:24px}.os-article blockquote p:last-child{margin-bottom:0}.os-article table{width:100%;border-collapse:collapse;margin:0 0 var(--space-5);font-size:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}@media (max-width: 720px){.os-article table{display:block;overflow-x:auto}}.os-article thead th{text-align:left;padding:8px 14px;background:var(--surface-2);border-bottom:1px solid var(--line);font:500 11px/16px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap}.os-article td{padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:top;line-height:21px}.os-article tr:last-child td{border-bottom:0}.os-article em{color:var(--ink-3);font-style:normal;font-size:13px}.os-pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--line)}.os-pager a{display:grid;gap:2px;padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-decoration:none;color:var(--ink)}.os-pager a:hover{border-color:var(--line-2)}.os-pager span{font:500 11px/16px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.os-pager b{font:600 16px/22px var(--font-head)}.os-pager a.is-next{text-align:right;grid-column:2}.os-soon{display:inline-block;margin-left:6px;padding:0 5px;border:1px solid var(--line-2);border-radius:var(--radius);font:500 10px/16px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);vertical-align:1px}.os-person{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0;vertical-align:middle}.os-person__av{flex:none;width:22px;height:22px;border-radius:var(--radius);background:var(--surface-2);color:var(--ink-2);display:grid;place-items:center;font:500 10px/1 var(--font-mono);letter-spacing:.02em;text-transform:uppercase}.os-person__name{font:400 14px/20px var(--font-text);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.os-person__me{font:400 12px/20px var(--font-text);color:var(--ink-3)}.os-person--anon .os-person__name{color:var(--ink-3);font-weight:400}.os-person--anon .os-person__av{background:transparent;border:1px dashed var(--line-2);color:var(--ink-3)}.os-person--s .os-person__av{width:18px;height:18px;font-size:9px}.os-person--s .os-person__name{font-size:13px}a.os-person{text-decoration:none}a.os-person:hover .os-person__name{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.os-learn{max-width:var(--width-page);margin:0 auto;padding:var(--space-8) var(--space-7) var(--space-9)}@media (max-width: 720px){.os-learn{padding:var(--space-6) var(--space-4) var(--space-8)}}.os-path{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-5) var(--space-6);margin-bottom:var(--space-6)}.os-path__head h2{margin:0 0 4px}.os-path__head p{margin:0 0 var(--space-4);color:var(--ink-2)}.os-path__steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;border-top:1px solid var(--line)}.os-path__step{display:grid;align-content:start;gap:4px;padding:var(--space-4) var(--space-4) 0 0;border-left:0}.os-path__step+.os-path__step{padding-left:var(--space-4);border-left:1px solid var(--line)}.os-path__step a,.os-path__step>span:not(.os-path__n):not(.t-meta):not(.os-soon){font:600 16px/22px var(--font-head);color:var(--ink);text-decoration:none}.os-path__step a:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.os-path__n{font:500 11px/16px var(--font-mono);color:var(--ink-3)}.os-path__step .os-soon{justify-self:start;margin-left:0}@media (max-width: 720px){.os-path__step+.os-path__step{padding-left:0;border-left:0;border-top:1px solid var(--line)}}.os-program__mod{margin-top:var(--space-5)}.os-program__mod ol{list-style:none;margin:0;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.os-article .os-program__mod li{margin:0}.os-program__item{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;gap:var(--space-4);align-items:center;padding:12px var(--space-4);border-top:1px solid var(--line);font-size:14.5px}.os-program__item:first-child{border-top:0}.os-program__item a{color:var(--ink);text-decoration:none;font-weight:500}.os-program__item a:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.os-program__n{font-size:12px;color:var(--ink-3)}.os-program__kind{font:500 11px/16px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.os-program__kind.is-test{color:var(--ink)}@media (max-width: 720px){.os-program__item{grid-template-columns:24px minmax(0,1fr)}.os-program__kind,.os-program__item .os-status{grid-column:2}}.os-docs__group a.is-done:after{content:" ✓";color:var(--green)}.os-progress{height:6px;background:var(--surface-2)}.os-progress i{display:block;height:100%;background:var(--ink);transition:width var(--dur) var(--ease)}.os-block{margin:var(--space-6) 0;padding:var(--space-5) var(--space-6);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.os-block__label{margin-bottom:var(--space-3)}@media (max-width: 720px){.os-block{padding:var(--space-4)}}.os-callout{margin:0 0 var(--space-5);padding:var(--space-4) var(--space-5);border:1px solid var(--line);border-left:2px solid var(--ink);border-radius:var(--radius);background:var(--surface)}.os-callout--warn{border-left-color:var(--yellow)}.os-callout p{margin:0;font-size:14.5px;line-height:23px}.os-quiz{display:grid;gap:var(--space-5)}.os-quiz__q{border:0;margin:0;padding:0 0 var(--space-5);border-bottom:1px solid var(--line);min-width:0;display:grid;gap:var(--space-3)}.os-quiz__q:last-of-type{border-bottom:0;padding-bottom:0}.os-quiz__q legend{padding:0;display:grid;gap:4px;margin-bottom:var(--space-3)}.os-quiz__text{font:500 15.5px/24px var(--font-text);color:var(--ink)}.os-quiz__opts{display:grid;gap:6px}.os-quiz__opt{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:var(--space-3);align-items:start;padding:10px 14px;border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);cursor:pointer;font-size:14.5px;line-height:22px}.os-quiz__opt:hover{border-color:var(--ink-3)}.os-quiz__opt input{margin:4px 0 0;accent-color:var(--ink)}.os-quiz__opt.is-picked{border-color:var(--ink)}.os-quiz__opt.is-correct{border-color:var(--green-line);background:var(--green-soft)}.os-quiz__opt.is-wrong{border-color:var(--red-line);background:var(--red-soft)}.os-quiz__opt em{font:500 11px/22px var(--font-mono);font-style:normal;letter-spacing:.04em;text-transform:uppercase}.os-quiz__opt.is-correct em{color:var(--green)}.os-quiz__opt.is-wrong em{color:var(--red)}.os-quiz__num{max-width:200px;font-family:var(--font-mono)}.os-quiz__verdict{font-size:14px;line-height:22px;color:var(--ink-2);padding-left:12px;border-left:2px solid var(--line-2)}.os-quiz__verdict.is-ok{border-left-color:var(--green)}.os-quiz__verdict.is-ok b{color:var(--green)}.os-quiz__verdict.is-no{border-left-color:var(--red)}.os-quiz__verdict.is-no b{color:var(--red)}.os-quiz fieldset:disabled .os-quiz__opt{cursor:default}.os-trainer{display:grid;gap:var(--space-4)}.os-trainer__head p{margin:4px 0 0;color:var(--ink-2)}.os-calib{list-style:none;margin:0;padding:0;display:grid}.os-article .os-calib li{margin:0;font-size:14.5px}.os-calib__row{display:grid;grid-template-columns:24px minmax(0,1fr) auto 84px;gap:var(--space-3);align-items:center;padding:10px 0;border-top:1px solid var(--line)}.os-calib__row:first-child{border-top:0}.os-calib__n{font-size:12px;color:var(--ink-3)}.os-calib__res{grid-column:2 / -1;font:500 11px/16px var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.os-calib__res.is-ok{color:var(--green)}.os-calib__res.is-no{color:var(--red)}.os-calib__table{margin:var(--space-2) 0;border:1px solid var(--line)}.os-trainer__result{display:grid;gap:var(--space-3)}@media (max-width: 720px){.os-calib__row{grid-template-columns:24px minmax(0,1fr)}.os-calib__row .os-seg,.os-calib__row .os-select{grid-column:2;justify-self:start}}.os-assess__kv{max-width:360px;margin:0 0 var(--space-5)}.os-assess__result{padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-left:2px solid var(--line-2);border-radius:var(--radius);background:var(--surface)}.os-assess__result.is-ok{border-left-color:var(--green)}.os-assess__result.is-no{border-left-color:var(--red)}.os-assess__result .os-mono{font-weight:500}.os-lesson-done{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-top:var(--space-7)}.os-home{max-width:var(--width-page);margin:0 auto;padding:56px var(--space-7) var(--space-9)}.os-home__hero{max-width:760px;margin-bottom:40px}.os-home__hero .t-label{margin-bottom:var(--space-3)}.os-home__hero h1{margin:0 0 var(--space-4);font:600 44px/50px var(--font-head);letter-spacing:-.01em}.os-home__hero p{margin:0;font-size:18px;line-height:29px;color:var(--ink-2);max-width:680px}.os-dirs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}.os-dir{position:relative;display:grid;grid-template-rows:auto auto 1fr auto;gap:var(--space-3);padding:var(--space-6) var(--space-5) var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);min-width:0;transition:border-color var(--dur) var(--ease)}.os-dir:hover{border-color:var(--ink-3)}.os-dir:focus-within{border-color:var(--ink)}.os-dir__link{color:inherit;text-decoration:none}.os-dir__link:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius)}.os-dir__link:focus-visible{outline:none}.os-dir__link:focus-visible:after{outline:2px solid var(--accent);outline-offset:2px}.os-dir__live a,.os-dir__sections a{position:relative;z-index:1}.os-dir__go{position:absolute;right:var(--space-5);bottom:var(--space-5);font:400 18px/1 var(--font-text);color:var(--ink-3);transition:transform var(--dur) var(--ease),color var(--dur) var(--ease)}.os-dir:hover .os-dir__go{color:var(--ink);transform:translate(3px)}.os-dir__sections{padding-right:var(--space-6)}.os-dir__head{display:grid;gap:6px}.os-dir__eyebrow{display:flex;justify-content:space-between;gap:var(--space-2);font:500 11px/16px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.os-dir__head h2{margin:0;font:600 24px/30px var(--font-head)}.os-dir__status{font:500 10.5px/16px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap}.os-dir__status.is-live{color:var(--accent)}@supports (grid-template-rows: subgrid){.os-dir{grid-row:span 5;grid-template-rows:subgrid;row-gap:var(--space-3)}.os-dir__head{display:contents}.os-dir__eyebrow{align-self:end}.os-dir__head h2{margin-top:calc(6px - var(--space-3))}}.os-dir__meaning{margin:0;font-size:14px;line-height:21px;color:var(--ink-2);min-height:63px}.os-dir__live{min-height:168px;border-top:1px solid var(--line);padding-top:var(--space-2)}.os-dir__live ul{list-style:none;margin:0;padding:0}.os-dir__live li a{display:grid;gap:1px;padding:8px 0;border-bottom:1px solid var(--line);color:inherit;text-decoration:none}.os-dir__live li:last-child a{border-bottom:0}.os-dir__live li a:hover b{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.os-dir__kind{font:500 10.5px/14px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.os-dir__live b{font:600 14.5px/20px var(--font-head)}.os-dir__live small{font-size:12.5px;color:var(--ink-3)}.os-dir__empty{margin:var(--space-2) 0 0;font-size:13.5px;line-height:20px;color:var(--ink-2)}.os-dir__wait{display:block;margin-top:var(--space-2);font-size:12.5px;color:var(--ink-3)}.os-dir__sections{display:flex;flex-wrap:wrap;gap:4px var(--space-3);font-size:13px}.os-dir__sections a{color:var(--ink-2);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:var(--line-2)}.os-dir__sections a:hover{color:var(--ink);text-decoration-color:var(--ink)}.os-home__about{margin-top:48px;padding-top:var(--space-6);border-top:1px solid var(--line);display:grid;grid-template-columns:200px minmax(0,660px);gap:var(--space-2) var(--space-7)}.os-home__about h2{margin:0;font:600 21px/26px var(--font-head);grid-row:span 2}.os-home__about p{margin:0;font-size:15.5px;line-height:26px;color:var(--ink-2)}.os-home__links{display:flex;flex-wrap:wrap;gap:var(--space-5)}.os-home__links a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}@media (max-width: 1100px){.os-dirs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.os-home{padding:var(--space-6) var(--space-4) var(--space-8)}.os-home__hero{margin-bottom:var(--space-6)}.os-home__hero h1{font-size:32px;line-height:38px}.os-home__hero p{font-size:16.5px;line-height:26px}.os-dirs{grid-template-columns:1fr;gap:var(--space-3)}.os-dir__meaning,.os-dir__live{min-height:0}.os-home__about{grid-template-columns:1fr}}.os-user__me{display:flex;align-items:center;gap:var(--space-3);color:inherit;text-decoration:none}.os-nav__links a.os-nav__aux{color:var(--ink-3)}@media (max-width: 720px){.os-nav__in{padding:0 var(--space-4);gap:var(--space-4)}.os-nav__links{position:fixed;left:0;right:0;bottom:0;z-index:10;height:56px;padding:0;gap:0;display:grid;grid-template-columns:repeat(4,1fr);background:var(--surface);border-top:1px solid var(--line)}.os-nav__links a{display:grid;place-items:center;line-height:1;font-size:13px}.os-nav__links a[aria-current=page]:after{top:-1px;bottom:auto}.os-nav__links a.os-nav__aux{display:none}.os-root{padding-bottom:56px}}.os-footer__col h4 a{color:inherit;text-decoration:none}.os-footer__legal{display:flex;flex-wrap:wrap;gap:var(--space-4)}.os-footer__legal a{color:var(--ink-3);text-decoration:none}.os-footer__legal a:hover{color:var(--ink)}.os-auth{max-width:560px;margin:0 auto;padding:56px var(--space-4) var(--space-9)}.os-auth .t-label{margin-bottom:var(--space-2)}.os-auth h1{margin:0 0 var(--space-3)}.os-auth__lead{margin:0 0 var(--space-6);color:var(--ink-2);font-size:15.5px;line-height:25px}.os-auth__way{padding:var(--space-5) 0;border-top:1px solid var(--line);display:grid;gap:var(--space-3);justify-items:start}.os-auth__way h2{margin:0;font:600 12px/16px var(--font-text);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}.os-auth__tg{gap:var(--space-2)}.os-auth__form{display:grid;gap:var(--space-4);width:100%}.os-auth__form .os-field>span:first-child{font:600 13px/18px var(--font-text)}.os-auth__sent{margin:0;font-size:14.5px;line-height:23px}.os-auth__again{border:0;background:none;padding:0;color:var(--accent);font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.os-auth__handle{display:flex;align-items:center;gap:6px}.os-auth__handle>span{font-size:13px;color:var(--ink-3);white-space:nowrap}.os-auth__checks{border:0;margin:0;padding:0;display:grid;gap:var(--space-2)}.os-auth__checks legend{padding:0;margin-bottom:var(--space-2);font:600 13px/18px var(--font-text)}.os-auth__checks label,.os-auth__agree,.os-me__switch{display:flex;gap:var(--space-2);align-items:flex-start;font-size:14px;line-height:21px}.os-auth__checks input,.os-auth__agree input,.os-me__switch input{margin-top:3px;accent-color:var(--ink)}.os-auth__agree a,.os-auth__legal a{color:var(--accent);text-underline-offset:3px}.os-auth__legal{margin-top:var(--space-5)}@media (max-width: 720px){.os-auth{padding-top:var(--space-6)}.os-auth__handle{flex-wrap:wrap}}.os-me{max-width:720px;margin:0 auto;padding:48px var(--space-4) var(--space-9);display:grid;gap:var(--space-4)}.os-me__head{display:flex;gap:var(--space-5);align-items:center;margin-bottom:var(--space-3)}.os-me__head h1{margin:4px 0 2px}.os-me__photo{width:64px;height:64px;border-radius:var(--radius);object-fit:cover;flex:none}.os-me__photo--empty{display:grid;place-items:center;background:var(--surface-2);color:var(--ink-2);font:500 18px var(--font-mono)}.os-me__handle{font-size:13px;color:var(--ink-3);text-decoration:none}a.os-me__handle:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.os-me__box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-5);display:grid;gap:var(--space-3)}.os-me__box h2{margin:0;font:600 12px/16px var(--font-text);letter-spacing:.1em;text-transform:uppercase}.os-me__box p{margin:0}.os-me__note{font-size:13.5px;line-height:21px;color:var(--ink-2)}.os-me__status{font:600 17px/23px var(--font-head)}.os-me__status.is-member{color:var(--accent)}.os-me__status.is-blocked{color:var(--red)}.os-me__edit{justify-self:start}.os-me .os-kv{max-width:480px}.os-me .os-kv dd{font-family:var(--font-text)}.os-curator-mark{margin-left:.12em;font:600 .58em/0 var(--font-head);color:var(--accent);vertical-align:super}.os-me__since{margin:4px 0 0;font-size:12.5px;color:var(--ink-3)}.os-subnav{background:var(--surface);border-bottom:1px solid var(--line)}.os-subnav__in{max-width:var(--width-page);margin:0 auto;padding:0 var(--space-7);display:flex;align-items:center;gap:var(--space-6);overflow-x:auto;scrollbar-width:none}.os-subnav__in::-webkit-scrollbar{display:none}.os-subnav a{font:500 13px/44px var(--font-text);color:var(--ink-2);text-decoration:none;white-space:nowrap;position:relative}.os-subnav a:hover,.os-subnav a[aria-current=page]{color:var(--ink)}.os-subnav a[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent)}.os-subnav__back{padding-right:var(--space-6);border-right:1px solid var(--line);line-height:20px!important;color:var(--ink-3)!important}.os-subnav__back:hover{color:var(--ink)!important}@media (max-width: 720px){.os-subnav__in{padding:0 var(--space-4);gap:var(--space-5)}}.os-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-4)}.os-section{position:relative;display:grid;grid-template-rows:auto auto 1fr auto;gap:var(--space-2);min-height:168px;padding:var(--space-6) var(--space-5) var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:inherit;text-decoration:none;transition:border-color var(--dur) var(--ease)}a.os-section:hover{border-color:var(--ink-3)}a.os-section:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.os-section__n{font:500 11px/16px var(--font-mono);letter-spacing:.06em;color:var(--ink-3)}.os-section h2{margin:0;font:600 22px/28px var(--font-head)}.os-section p{margin:0;font-size:14px;line-height:21px;color:var(--ink-2)}.os-section__foot{display:flex;justify-content:space-between;align-items:center;font:500 11px/16px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.os-section__go{font:400 18px/1 var(--font-text);text-transform:none;transition:transform var(--dur) var(--ease),color var(--dur) var(--ease)}a.os-section:hover .os-section__go{color:var(--ink);transform:translate(3px)}button.os-tag{cursor:pointer}.os-dd{position:relative;display:inline-block;min-width:160px;max-width:100%}.os-dd__btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);height:32px;padding:0 12px;border:1px solid var(--line-2);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:400 13px var(--font-text);cursor:pointer;text-align:left}.os-dd--m .os-dd__btn{height:40px;font-size:14px}.os-dd__btn>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.os-dd__btn svg{flex:none;color:var(--ink-3);transition:transform var(--dur) var(--ease)}.os-dd__btn[aria-expanded=true]{border-color:var(--ink)}.os-dd__btn[aria-expanded=true] svg{transform:rotate(180deg)}.os-dd__btn:hover{border-color:var(--ink-3)}.os-dd__btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.os-dd__btn:disabled{opacity:.5;cursor:not-allowed}.os-dd__placeholder{color:var(--ink-3)}.os-dd__pop{position:absolute;z-index:30;top:calc(100% + 4px);left:0;min-width:100%;width:max-content;max-width:min(440px,90vw);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:0 8px 24px #1114181f;overflow:hidden}.os-dd__search{display:block;width:100%;box-sizing:border-box;height:36px;padding:0 12px;border:0;border-bottom:1px solid var(--line);background:var(--surface);color:var(--ink);font:400 13px var(--font-text);outline:none}.os-dd__list{list-style:none;margin:0;padding:4px 0;max-height:300px;overflow-y:auto}.os-dd__opt{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:8px 12px;font-size:13px;line-height:18px;color:var(--ink);cursor:pointer}.os-dd__opt small{display:block;color:var(--ink-3);font-size:12px}.os-dd__opt.is-active{background:var(--surface-2)}.os-dd__opt.is-selected{font-weight:600}.os-dd__opt.is-selected svg{color:var(--accent);flex:none}.os-dd__opt.is-disabled{color:var(--ink-3);cursor:default}.os-dd__group{padding:10px 12px 4px;font:500 10.5px/14px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);border-top:1px solid var(--line)}.os-dd__group:first-child{border-top:0}.os-dd__empty{padding:8px 12px;font-size:13px;color:var(--ink-3)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .os-dd__pop{box-shadow:0 8px 24px #00000080}}:root[data-theme=dark] .os-dd__pop{box-shadow:0 8px 24px #00000080}input[type=checkbox],input[type=radio]{accent-color:var(--ink)}.os-review{display:flex;flex-direction:column;height:calc(100vh - var(--height-nav))}.os-review__head{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-5);flex-wrap:wrap;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--line);background:var(--bg)}.os-review__head .t-label a{color:inherit}.os-review__title{margin:4px 0 6px;font:600 22px/28px var(--font-head)}.os-review__grid{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(460px,1fr)}.os-review__grid.has-list{grid-template-columns:280px minmax(0,1fr) minmax(440px,1fr)}.os-review__grid>*{overflow-y:auto;min-height:0}.os-review__list{border-right:1px solid var(--line);background:var(--surface)}.os-review__search{position:sticky;top:0;z-index:1;padding:var(--space-3);background:var(--surface);border-bottom:1px solid var(--line)}.os-review__search .os-input{width:100%;box-sizing:border-box;height:36px}.os-review__item{all:unset;box-sizing:border-box;display:grid;gap:4px;width:100%;padding:11px var(--space-4);border-bottom:1px solid var(--line);cursor:pointer}.os-review__item:hover{background:var(--surface-2)}.os-review__item.is-current{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}.os-review__item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.os-review__name{font-size:14px;font-weight:500;color:var(--ink)}.os-review__meta{display:flex;align-items:center;gap:var(--space-2);font-size:12.5px;color:var(--ink-2);flex-wrap:wrap}.os-review__answer{padding:var(--space-5) var(--space-6) var(--space-9)}.os-review__answer>*{max-width:760px}.os-review__who{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;padding-bottom:var(--space-3);margin-bottom:var(--space-4);border-bottom:1px solid var(--line)}.os-review__form{border-left:1px solid var(--line);background:var(--surface);overflow:hidden!important}.os-grade{height:100%;display:flex;flex-direction:column}.os-grade__top{padding:var(--space-4) var(--space-5) var(--space-3);display:grid;gap:var(--space-3);border-bottom:1px solid var(--line)}.os-grade__score{display:flex;justify-content:space-between;align-items:baseline}.os-grade__score .os-mono{font-size:20px}.os-grade__axes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px var(--space-5)}.os-grade__axis{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);font-size:13.5px}.os-grade__axis .os-seg button{padding:0 10px;height:28px}.os-grade__review{flex:1;min-height:0;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-5)}.os-grade__bar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap}.os-grade__text{flex:1;min-height:220px;resize:none;font-size:14.5px;line-height:23px}.os-grade__preview{flex:1;min-height:220px;overflow-y:auto;border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-3) var(--space-4);max-width:none}.os-grade__extra{padding:var(--space-2) var(--space-5);border-top:1px solid var(--line)}.os-grade__extra summary{cursor:pointer;font-size:13px;color:var(--ink-2);padding:6px 0}.os-grade__save{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-top:1px solid var(--line);background:var(--surface)}@media (max-width: 1100px){.os-review{height:auto}.os-review__head{padding:var(--space-4)}.os-review__grid,.os-review__grid.has-list{grid-template-columns:1fr}.os-review__grid>*{overflow:visible}.os-review__list{max-height:50vh;overflow-y:auto!important;border-right:0;border-bottom:1px solid var(--line)}.os-review__answer{padding:var(--space-5) var(--space-4)}.os-review__form{border-left:0;border-top:1px solid var(--line)}.os-grade{height:auto}.os-grade__axes{grid-template-columns:1fr}.os-grade__text{min-height:320px}.os-grade__save{position:sticky;bottom:56px}}.os-dict__add{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-bottom:var(--space-3);max-width:960px}.os-dict__add .os-input{flex:1 1 200px;height:40px}.os-dict__group{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:var(--space-3);max-width:960px}.os-dict__row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:12px var(--space-4);border-top:1px solid var(--line)}.os-dict__group>.os-dict__row:first-child,.os-dict__group>.t-label+.os-dict__row{border-top:0}.os-dict__row.is-sub{padding-left:var(--space-7);background:var(--bg)}.os-dict__edit{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-2)}.os-dict__edit .os-input{flex:1 1 260px;height:40px}.os-badge{--badge-bg: linear-gradient(145deg, #FBFCFD 0%, #E9ECEF 55%, #D9DEE3 100%);--badge-ring: #A9B2BB;--badge-gap: #F2F4F6;--badge-ring2: #C9CFD5;--badge-ink: #3C434A;flex:none;display:inline-grid;place-items:center;border-radius:50%;background:var(--badge-bg);color:var(--badge-ink);box-shadow:inset 0 0 0 1px var(--badge-ring),inset 0 0 0 3px var(--badge-gap),inset 0 0 0 4px var(--badge-ring2),0 1px 2px #11141814;overflow:hidden}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .os-badge{--badge-bg: linear-gradient(145deg, #3A4047 0%, #2A2F34 55%, #1F2327 100%);--badge-ring: #707A84;--badge-gap: #2A2F34;--badge-ring2: #4E565E;--badge-ink: #DDE2E7}}:root[data-theme=dark] .os-badge{--badge-bg: linear-gradient(145deg, #3A4047 0%, #2A2F34 55%, #1F2327 100%);--badge-ring: #707A84;--badge-gap: #2A2F34;--badge-ring2: #4E565E;--badge-ink: #DDE2E7}.os-badge img{width:100%;height:100%;object-fit:cover;border-radius:50%}.os-badge-row{display:inline-flex;align-items:center;gap:var(--space-3)}.os-icon-pick{display:grid;grid-template-columns:repeat(auto-fill,44px);gap:6px}.os-icon-pick button{all:unset;box-sizing:border-box;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;cursor:pointer;border:1px solid transparent}.os-icon-pick button:hover{border-color:var(--line-2)}.os-icon-pick button[aria-pressed=true]{border-color:var(--ink-2);background:var(--surface-2)}.os-icon-pick button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.os-review__flash{margin:0;padding:10px var(--space-6);background:var(--accent-soft);border-bottom:1px solid var(--accent-line);font-size:13.5px;color:var(--ink)}.os-rankmark{flex:none;display:inline-block;font:600 12.5px/1 var(--font-mono);color:var(--ink-3);letter-spacing:.02em}.os-rankmark--m{font-size:15px}.os-rankmark.is-splus,.os-rankmark.is-s{color:var(--accent);font-weight:700}.os-rankmark.is-a{color:var(--ink);font-weight:700}.os-rankmark.is-b{color:var(--ink-2)}.os-rankmark.is-c{color:var(--ink-3);font-weight:500}.os-rating{table-layout:auto}.os-rating td,.os-rating th{padding:12px var(--space-3);white-space:nowrap}.os-rating td:first-child,.os-rating th:first-child{padding-left:var(--space-5);width:1%}.os-rating td:last-child,.os-rating th:last-child{padding-right:var(--space-5)}.os-rating th button{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.os-rating th button:hover{color:var(--ink)}.os-rating th button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.os-rating th[aria-sort=ascending],.os-rating th[aria-sort=descending]{color:var(--ink)}.os-rating__player{display:flex;align-items:center;gap:var(--space-3);min-width:0;white-space:normal}.os-rating__player img,.os-rating__ini{flex:none;width:28px;height:28px;border-radius:var(--radius);object-fit:cover}.os-rating__ini{display:grid;place-items:center;background:var(--surface-2);color:var(--ink-2);font:500 11px var(--font-mono)}.os-rating__name{display:grid;gap:2px;min-width:0}.os-rating__name a{color:var(--ink);text-decoration:none;font-weight:500}.os-rating__name a:hover{text-decoration:underline;text-underline-offset:3px}.os-rating__sub{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12.5px;color:var(--ink-3)}.os-rating__anon{color:var(--ink-3)}.os-rating__case{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;color:var(--ink-2);padding-left:6px!important;padding-right:6px!important}.os-rating__case.is-top{color:var(--ink);font-weight:600}.os-rating__case.is-ever{color:var(--ink-3)}.os-rating__pts{font:600 15px var(--font-mono);text-align:right}.os-rating tr.is-me td{background:var(--accent-soft)}@media (max-width: 900px){.os-rating .is-wide,.os-heat-legend{display:none}.os-rating td,.os-rating th{padding:10px 8px}.os-rating td:first-child,.os-rating th:first-child{padding-left:12px}.os-rating td:last-child,.os-rating th:last-child{padding-right:12px}}.os-notes{display:grid;gap:var(--space-2);max-width:640px;padding:var(--space-4);background:var(--surface);border:1px dashed var(--line-2);border-radius:var(--radius)}.os-notes__item{padding:var(--space-2) 0;border-bottom:1px solid var(--line)}.os-notes__item p{margin:4px 0 0;font-size:14px;line-height:21px;white-space:pre-wrap}.os-notes__head{display:flex;justify-content:space-between;gap:var(--space-3);font-size:12px;color:var(--ink-3)}.os-notes__del{all:unset;cursor:pointer;color:var(--ink-3);font-size:12px}.os-notes__del:hover{color:var(--red);text-decoration:underline}.os-badge--gold{--badge-bg: linear-gradient(145deg, #FFF9EC 0%, #F7E6BE 55%, #EDCF8C 100%);--badge-ring: #B8862B;--badge-gap: #FFF7E3;--badge-ring2: #E2C27A;--badge-ink: #5A3A00}.os-badge--green{--badge-bg: linear-gradient(145deg, #F3FAF6 0%, #DBEFE2 55%, #C3E2CE 100%);--badge-ring: #2E7A4E;--badge-gap: #EEF8F2;--badge-ring2: #9FCDB0;--badge-ink: #1F5536}.os-badge--graphite{--badge-bg: linear-gradient(145deg, #4A5159 0%, #2A2F34 55%, #171A1D 100%);--badge-ring: #111418;--badge-gap: #2F353B;--badge-ring2: #6B737B;--badge-ink: #F1F3F5}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .os-badge--gold{--badge-bg: linear-gradient(145deg, #6A5226 0%, #4A3917 55%, #33270F 100%);--badge-ring: #E3AA4A;--badge-gap: #4A3917;--badge-ring2: #8A6A2E;--badge-ink: #F8E3B0}:root:not([data-theme=light]) .os-badge--green{--badge-bg: linear-gradient(145deg, #2A4E3A 0%, #1E3A2A 55%, #15271D 100%);--badge-ring: #5DBB86;--badge-gap: #1E3A2A;--badge-ring2: #3A6E50;--badge-ink: #D3EEDD}:root:not([data-theme=light]) .os-badge--graphite{--badge-bg: linear-gradient(145deg, #F1F3F5 0%, #D5DADF 55%, #B9C0C7 100%);--badge-ring: #E7E9EB;--badge-gap: #DDE1E5;--badge-ring2: #8A939B;--badge-ink: #111418}}:root[data-theme=dark] .os-badge--gold{--badge-bg: linear-gradient(145deg, #6A5226 0%, #4A3917 55%, #33270F 100%);--badge-ring: #E3AA4A;--badge-gap: #4A3917;--badge-ring2: #8A6A2E;--badge-ink: #F8E3B0}:root[data-theme=dark] .os-badge--green{--badge-bg: linear-gradient(145deg, #2A4E3A 0%, #1E3A2A 55%, #15271D 100%);--badge-ring: #5DBB86;--badge-gap: #1E3A2A;--badge-ring2: #3A6E50;--badge-ink: #D3EEDD}:root[data-theme=dark] .os-badge--graphite{--badge-bg: linear-gradient(145deg, #F1F3F5 0%, #D5DADF 55%, #B9C0C7 100%);--badge-ring: #E7E9EB;--badge-gap: #DDE1E5;--badge-ring2: #8A939B;--badge-ink: #111418}.os-rating__case.os-heat{background:color-mix(in srgb,var(--accent) var(--heat),var(--surface));color:var(--ink);box-shadow:inset 0 0 0 2px var(--surface)}.os-rating__case.os-heat.is-top{box-shadow:inset 0 0 0 2px var(--surface),inset 0 0 0 3.5px var(--accent);font-weight:700}.os-rating__pts{background:linear-gradient(var(--accent),var(--accent)) right calc(100% - 8px) / var(--bar) 3px no-repeat}.os-rating__place{display:inline-grid;place-items:center;min-width:26px;height:26px;border-radius:50%;font:600 13px/1 var(--font-mono)}.os-rating__place.is-1{background:var(--accent);color:var(--on-ink)}:root[data-theme=dark] .os-rating__place.is-1{color:#171a1d}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .os-rating__place.is-1{color:#171a1d}}.os-rating__place.is-2,.os-rating__place.is-3{box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--ink)}.os-heat-legend{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-3)}.os-heat-legend i{display:inline-block;width:90px;height:10px;border-radius:2px;background:linear-gradient(to right,color-mix(in srgb,var(--accent) 5%,var(--surface)),color-mix(in srgb,var(--accent) 34%,var(--surface)));box-shadow:inset 0 0 0 1px var(--line)}.os-ed{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.os-ed__bar{position:sticky;top:var(--height-nav);z-index:5;display:flex;align-items:center;flex-wrap:wrap;gap:2px;padding:6px 8px;border-bottom:1px solid var(--line);background:var(--surface);border-radius:var(--radius) var(--radius) 0 0}.os-ed__btn{min-width:32px;height:32px;padding:0 8px;border:0;border-radius:var(--radius);background:none;color:var(--ink-2);font:500 14px/1 var(--font-text);cursor:pointer}.os-ed__btn:hover{background:var(--surface-2);color:var(--ink)}.os-ed__btn.is-on{background:var(--ink);color:var(--on-ink)}.os-ed__btn:disabled{opacity:.35;cursor:default;background:none}.os-ed__sep{width:1px;height:20px;background:var(--line);margin:0 4px}.os-ed__status{margin-left:auto;font-size:12.5px;color:var(--ink-3)}.os-ed__link{display:flex;gap:var(--space-2);align-items:center;padding:8px;border-bottom:1px solid var(--line);background:var(--surface-2)}.os-ed__link .os-input{flex:1;height:32px}.os-ed__body{min-height:60vh;max-width:none;padding:var(--space-6) var(--space-7);outline:none}.os-ed__body>*{max-width:var(--width-read);margin-left:auto;margin-right:auto}.os-ed__body p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--ink-3);float:left;height:0;pointer-events:none}.os-ed__body h2{margin-top:var(--space-7)}.os-ed__body blockquote{margin:var(--space-4) auto;padding-left:var(--space-4);border-left:3px solid var(--accent);color:var(--ink-2)}.os-ed__body hr{border:0;border-top:1px solid var(--line-2);margin:var(--space-7) auto}.os-ed__body a{color:var(--accent)}.os-ed__fig{margin:var(--space-5) auto}.os-ed__fig img{display:block;max-width:100%;height:auto;border-radius:var(--radius)}.os-ed__fig.is-wide{max-width:100%}.os-ed__fig.is-selected img{outline:2px solid var(--accent);outline-offset:2px}.os-ed__fig figcaption{margin-top:6px;font-size:13px;color:var(--ink-3);text-align:center}.os-ed__bubble{display:flex;align-items:center;gap:2px;padding:4px;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--shadow-pop)}.os-ed__bubble--img .os-input{width:280px;height:32px}.os-ed__slash-pop{position:absolute;z-index:50}.os-ed__slash{display:grid;min-width:260px;max-height:320px;overflow-y:auto;padding:4px;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--shadow-pop)}.os-ed__slash button{all:unset;box-sizing:border-box;display:grid;gap:1px;padding:7px 10px;border-radius:var(--radius);cursor:pointer}.os-ed__slash button.is-active{background:var(--surface-2)}.os-ed__slash b{font-size:13.5px;font-weight:500;color:var(--ink)}.os-ed__slash small{font-size:12px;color:var(--ink-3)}.os-ed__slash-empty{padding:8px 10px;font-size:13px;color:var(--ink-3)}.os-article figure.os-fig{margin:var(--space-5) 0}.os-article figure.os-fig img{display:block;max-width:100%;height:auto;border-radius:var(--radius)}.os-article figure.os-fig figcaption{margin-top:6px;font-size:13px;color:var(--ink-3);text-align:center}@media (min-width: 1000px){.os-article figure.os-fig.is-wide{margin-left:-120px;margin-right:-120px}}.os-artedit{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--space-6);max-width:1320px;margin:0 auto;padding:var(--space-6) var(--space-6) var(--space-9)}.os-artedit__main{min-width:0;display:grid;gap:var(--space-3);align-content:start}.os-artedit__main .t-label a{color:inherit}.os-artedit__title,.os-artedit__lead{width:100%;box-sizing:border-box;border:0;background:none;resize:none;outline:none;color:var(--ink);field-sizing:content}.os-artedit__title{font:600 34px/40px var(--font-head);padding:0}.os-artedit__lead{font:400 17px/26px var(--font-text);color:var(--ink-2);padding:0}.os-artedit__title::placeholder,.os-artedit__lead::placeholder{color:var(--ink-3)}.os-artedit__side{display:grid;gap:var(--space-4);align-content:start;position:sticky;top:calc(var(--height-nav) + var(--space-4));max-height:calc(100vh - var(--height-nav) - var(--space-6));overflow-y:auto}.os-artedit__panel{display:grid;gap:var(--space-3);padding:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.os-artedit__panel .os-input{height:36px}@media (max-width: 1000px){.os-artedit{grid-template-columns:1fr;padding:var(--space-4)}.os-artedit__side{position:static;max-height:none}.os-ed__body{padding:var(--space-4)}}.os-asec{margin-top:var(--space-6)}.os-achips{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--space-2)}.os-achips a.os-tag{text-decoration:none}.os-agrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4)}.os-acard{display:grid;grid-template-rows:auto 1fr;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;color:inherit;text-decoration:none;transition:border-color var(--dur) var(--ease)}.os-acard:hover{border-color:var(--ink-3)}.os-acard__img{display:block;aspect-ratio:16 / 9;background:var(--surface-2);overflow:hidden}.os-acard__img img{width:100%;height:100%;object-fit:cover;display:block}.os-acard__body{display:grid;gap:6px;padding:var(--space-4) var(--space-4) var(--space-5);align-content:start}.os-acard__title{font:600 18px/24px var(--font-head);color:var(--ink)}.os-acard__lead{font-size:14px;line-height:21px;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.os-acard__meta{font-size:12.5px;color:var(--ink-3)}.os-acard--big{grid-template-rows:none;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.os-acard--big .os-acard__img{aspect-ratio:auto;min-height:280px}.os-acard--big .os-acard__body{padding:var(--space-6);align-content:center}.os-acard--big .os-acard__title{font-size:28px;line-height:34px}.os-acard--big.no-cover{grid-template-columns:1fr}@media (max-width: 800px){.os-acard--big{grid-template-columns:1fr}.os-acard--big .os-acard__img{min-height:0;aspect-ratio:16 / 9}}.os-aview{max-width:var(--width-page);margin:0 auto;padding:var(--space-6) var(--space-7) var(--space-9)}.os-aview__cover{margin:0 0 var(--space-6)}.os-aview__cover img{width:100%;max-height:520px;object-fit:cover;border-radius:var(--radius);display:block}.os-aview__cover figcaption{margin-top:6px;font-size:13px;color:var(--ink-3)}.os-aview__grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:var(--space-8)}.os-aview__main{max-width:var(--width-read);min-width:0}.os-aview__title{margin:var(--space-2) 0 var(--space-3);font:600 38px/46px var(--font-head)}.os-aview__lead{margin:0 0 var(--space-4);font-size:18px;line-height:28px;color:var(--ink-2)}.os-aview__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-size:13px;color:var(--ink-3);margin:0 0 var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--line)}.os-aview__meta a.os-tag{text-decoration:none}.os-aview__body h2{scroll-margin-top:calc(var(--height-nav) + 16px)}.os-aview__toc{position:sticky;top:calc(var(--height-nav) + var(--space-6));align-self:start;display:grid;gap:6px;max-height:calc(100vh - var(--height-nav) - 48px);overflow-y:auto;padding-left:var(--space-4);border-left:1px solid var(--line)}.os-aview__toc a{font-size:13px;line-height:18px;color:var(--ink-2);text-decoration:none}.os-aview__toc a:hover{color:var(--ink)}.os-aview__more{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--line)}@media (max-width: 1000px){.os-aview{padding:var(--space-4)}.os-aview__grid{grid-template-columns:1fr}.os-aview__toc{display:none}.os-aview__title{font-size:30px;line-height:36px}}.os-aview__body blockquote,.os-ed__body blockquote{background:none;border:0;border-left:3px solid var(--accent);border-radius:0;padding:2px 0 2px var(--space-4);color:var(--ink-2)}.os-aview__body blockquote:before,.os-ed__body blockquote:before{content:none}.os-aview__body blockquote p,.os-ed__body blockquote p{font-size:inherit;line-height:inherit}.os-aview__body em,.os-ed__body em{color:inherit;font-style:italic;font-size:inherit}.os-tgimp{display:grid;gap:var(--space-2)}.os-tgimp__group{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.os-tgimp__group.is-picked{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.os-tgimp__group.is-done{opacity:.6}.os-tgimp__pick{display:grid;place-items:start center;padding-top:2px}.os-tgimp__post{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px var(--space-3);padding:4px 0;border-top:1px dashed var(--line)}.os-tgimp__post:first-child{border-top:0}.os-tgimp__post b{font-size:14px}.os-tgimp__side{display:grid;gap:6px;justify-items:end;align-content:start}.os-tgimp__btn{all:unset;cursor:pointer;font-size:12px;color:var(--accent);text-decoration:underline;text-underline-offset:2px}
