/* Acmachines visual refinement, 2026-09-13. */
:root { --page-bg:#f4f7fb; --card-bg:#fff; --radius-large:20px; --ac-ink:#1b2d45; --ac-muted:#687b91; --ac-line:#e5ecf4; }
:root.dark { --page-bg:#101823; --card-bg:#182332; --ac-ink:#e6edf7; --ac-muted:#a0b0c5; --ac-line:#2b394c; }
html { font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif!important; }
body { color:var(--ac-ink); line-height:1.7; }
#banner-wrapper { top:0!important; height:360px!important; opacity:.16; mask-image:linear-gradient(#000,transparent); pointer-events:none; }
#banner img { filter:saturate(.65); }
.dark #banner-wrapper { opacity:.12; }
#main-panel-wrapper { position:relative!important; top:auto!important; padding-top:40px; }
#top-row { padding-top:18px; }
#navbar > .absolute { display:none; }
#navbar > .card-base { border-radius:18px!important; height:68px; border:1px solid var(--ac-line); box-shadow:0 8px 28px #1d497a08; }
#navbar a { font-size:14px; }
#navbar .hidden.md\:flex a { padding-left:13px; padding-right:13px; font-weight:600; }
#main-grid { gap:26px; }
#swup-container { min-width:0; overflow:visible; }
.card-base { border:1px solid var(--ac-line); box-shadow:0 4px 20px #213b5904; }
#sidebar > div:first-child > .card-base { padding:28px 20px 22px; }
#sidebar a[aria-label="Profile"] { width:96px!important; max-width:96px!important; margin:0 auto 18px!important; border-radius:26px; box-shadow:0 6px 20px #1c54831a; transform:rotate(-3deg); }
#sidebar a[aria-label="Profile"]:hover { transform:rotate(0); }
#sidebar .text-xl { font-size:20px; letter-spacing:.02em; }
#sidebar widget-layout { box-shadow:none; padding-top:4px; }
#sidebar widget-layout > div:first-child { font-size:15px; letter-spacing:.06em; }
#sidebar #tags a { border-radius:8px; font-size:12px; background:color-mix(in srgb,var(--primary) 9%,var(--card-bg)); }
#sidebar #categories a { font-size:14px; }
.ac-intro { margin:0 0 26px; padding:4px 4px 0; }
.ac-eyebrow { display:flex; align-items:center; gap:9px; color:var(--ac-muted); font:600 11px/1.4 system-ui,sans-serif; letter-spacing:.19em; margin-bottom:12px; }
.ac-eyebrow::before { content:""; width:7px; height:7px; border-radius:50%; background:#488db8; box-shadow:0 0 0 4px #488db814; }
.ac-intro h1 { color:var(--ac-ink); font-size:34px; font-weight:750; line-height:1.4; letter-spacing:-.035em; margin:0 0 10px; }
.ac-intro p { color:var(--ac-muted); font-size:14px; line-height:1.85; margin:0; }
.ac-topics { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }
.ac-topics a { border:1px solid var(--ac-line); background:var(--card-bg); color:var(--ac-muted); border-radius:999px; padding:5px 14px; font-size:12px; transition:color .2s, border-color .2s; }
.ac-topics a:hover { color:var(--primary); border-color:var(--primary); }
.ac-section { display:flex; align-items:center; gap:16px; margin:28px 4px 17px; font-size:12px; color:var(--ac-muted); letter-spacing:.06em; }
.ac-section::after { content:""; height:1px; background:var(--ac-line); flex:1; }
#content-wrapper article.card-base { border-radius:18px; transition:transform .2s,box-shadow .2s,border-color .2s; }
#content-wrapper article.card-base:hover { transform:translateY(-3px); box-shadow:0 12px 28px #2947680a; border-color:color-mix(in srgb,var(--primary) 30%,var(--ac-line)); }
#content-wrapper article.card-base > div:first-child { padding:26px 30px 24px!important; width:100%!important; }
#content-wrapper article.card-base a.group { font-size:23px; font-weight:700; line-height:1.5; letter-spacing:-.02em; padding-right:28px; margin-bottom:12px; }
#content-wrapper article.card-base a.group::before { display:none!important; }
#content-wrapper article.card-base > a.btn-regular { width:32px; height:32px; top:28px; bottom:auto; right:22px; border-radius:50%; background:transparent; }
#content-wrapper article.card-base > a.btn-regular span { font-size:24px; }
#content-wrapper article.card-base .line-clamp-2 { -webkit-line-clamp:2!important; line-clamp:2; font-size:14px; line-height:1.85; color:var(--ac-muted); padding-right:0; margin-top:14px; margin-bottom:16px; }
#content-wrapper article.card-base .meta-icon { background:transparent; width:18px; height:20px; margin-right:6px; }
#content-wrapper article.card-base .meta-icon span { font-size:16px; color:var(--ac-muted); }
#content-wrapper article.card-base .text-sm { font-size:12px; }
#post-container { padding:34px 40px!important; }
#post-container h1 { letter-spacing:-.025em; line-height:1.5; }
#post-container .prose { font-size:16px; line-height:1.95; overflow-wrap:break-word; }
#post-container .prose :is(h1,h2,h3,h4) { scroll-margin-top:90px; line-height:1.6; }
#post-container .prose h2 { margin-top:2em; padding-bottom:.4em; border-bottom:1px solid var(--ac-line); font-size:1.4em; }
#post-container .prose p { margin:1.1em 0; }
#post-container .prose pre { border:1px solid var(--ac-line); border-radius:12px; font-size:13px; line-height:1.8; max-width:100%; }
#post-container .prose img { border-radius:12px; max-width:100%; height:auto; }
#post-container .prose blockquote { border-left:3px solid var(--primary); border-radius:0 10px 10px 0; padding:12px 20px; background:color-mix(in srgb,var(--primary) 5%,var(--card-bg)); }
#post-container .prose table { font-size:14px; }
a:focus-visible,button:focus-visible { outline:2px solid var(--primary); outline-offset:4px; }
@media(min-width:1024px) { #main-grid { grid-template-columns:232px minmax(0,1fr)!important; } #sidebar { max-width:none; } }
@media(max-width:1023px) { #main-grid { grid-template-columns:minmax(0,1fr)!important; gap:20px; } #swup-container,#sidebar { grid-column:1!important; } #sidebar { grid-row:2!important; } #sidebar > div:first-child { display:none; } #sidebar-sticky { display:grid; grid-template-columns:1fr 1fr; } }
@media(max-width:767px) {
 #top-row { padding:10px 12px 0; } #navbar > .card-base { height:60px; padding:0 7px; border-radius:14px!important; } #navbar > .card-base > a { padding:0 9px; } #navbar > .card-base > a span { font-size:13px; } #navbar > .card-base > a .icon-\[tabler--smart-home\] { font-size:21px; }
 #main-panel-wrapper { padding-top:25px; } #main-grid { padding:0 14px; } #banner-wrapper { height:280px!important; }
 .ac-intro { margin-bottom:20px; padding:0 3px; } .ac-intro h1 { font-size:28px; } .ac-intro p { font-size:13px; } .ac-eyebrow { font-size:10px; }
 .ac-topics { gap:7px; margin-top:15px; } .ac-topics a { padding:4px 11px; font-size:11px; } .ac-section { margin-top:24px; }
 #content-wrapper > .flex.flex-col { background:transparent!important; padding:0; gap:14px; }
 #content-wrapper article.card-base > div:first-child { padding:21px 20px!important; }
 #content-wrapper article.card-base a.group { font-size:20px; padding-right:16px; margin-bottom:10px; }
 #content-wrapper article.card-base a.group > span[class*="chevron"] { display:none; }
 #content-wrapper article.card-base .line-clamp-2 { font-size:13px; margin:12px 0; }
 #content-wrapper .border-dashed { display:none; } #sidebar-sticky { grid-template-columns:1fr; }
 #post-container { padding:25px 21px!important; } #post-container h1 { font-size:27px; } #post-container .prose { font-size:15px; line-height:1.95; }
}
@media(prefers-reduced-motion:reduce) { #content-wrapper article.card-base,.onload-animation { animation:none!important; transition:none!important; transform:none!important; } }

#top-row { height:86px!important; min-height:0!important; }
@media(max-width:767px) { #top-row { height:70px!important; } }

#main-grid, #banner-wrapper { translate:none!important; }
