/* SohajPedia — Wikipedia-style design (v2, 2026-11-12): Vector-like layout, Main-Page panels, real photos only */
*{box-sizing:border-box}
html{margin:0;padding:0}
body{margin:0;background:#fff;color:#202122;font-family:-apple-system,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;font-size:15px;line-height:1.65}
a{color:#3366cc;text-decoration:none}
a:hover{text-decoration:underline}
a:visited{color:#795cb2}
/* header */
.top{background:#fff;border-bottom:1px solid #a7d7f9;position:sticky;top:0;z-index:20}
.top-in{max-width:1240px;margin:0 auto;padding:8px 16px;display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.logo{font-family:'Linux Libertine','Hoefler Text',Georgia,'Times New Roman',serif;font-size:27px;color:#202122;text-decoration:none;line-height:1.05;white-space:nowrap}
.logo:hover{text-decoration:none}
.logo small{display:block;font-family:sans-serif;font-size:9.5px;letter-spacing:.22em;color:#54595d;margin-top:2px}
nav.main{display:flex;gap:16px;flex-wrap:wrap;font-size:14px}
nav.main a{color:#3366cc}
.searchbox{margin-left:auto;display:flex}
.searchbox input{border:1px solid #a2a9b1;border-radius:2px 0 0 2px;padding:6px 9px;font-size:14px;width:200px;background:#f8f9fa}
.searchbox button{border:1px solid #a2a9b1;border-left:0;border-radius:0 2px 2px 0;background:#f8f9fa;padding:6px 12px;font-size:14px;cursor:pointer;color:#3366cc;font-weight:600}
/* main page */
.mp{max-width:1240px;margin:0 auto;padding:14px 16px 30px}
.welcome{border:1px solid #aaa;background:#f9f9f9;padding:14px 18px;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:14px}
.welcome h1{font-family:'Linux Libertine',Georgia,serif;font-weight:400;font-size:26px;margin:0 0 2px}
.welcome p{margin:0;color:#202122}
.welcome .wsub{color:#54595d;font-size:13.5px}
.welcome .wright{text-align:right;font-size:13.5px;color:#54595d;min-width:180px}
.welcome .wright b{color:#202122;font-size:15px}
.mp-cols{display:flex;gap:14px;align-items:flex-start}
.mp-left{flex:1.25;min-width:0}
.mp-right{flex:1;min-width:0}
.panel{border:1px solid #a3bfb1;background:#fff;margin-bottom:14px}
.panel.blue{border-color:#a3b0bf}
.panel h3{margin:0;padding:6px 12px;font-size:15.5px;font-weight:700;background:#cef2e0;border-bottom:1px solid #a3bfb1;font-family:sans-serif}
.panel.blue h3{background:#cedff2;border-bottom-color:#a3b0bf}
.panel .pbody{padding:10px 14px 12px}
.panel .pbody p{margin:0 0 8px}
.panel ul{margin:4px 0 8px;padding-left:22px}
.panel li{margin-bottom:5px}
.thumb{border:1px solid #c8ccd1;background:#f8f9fa;padding:4px;font-size:12.5px;line-height:1.45;color:#202122}
.thumb img{display:block;width:100%;height:auto}
.thumb .cap{padding:5px 3px 2px}
.thumb .cap i{color:#54595d}
.fr{float:right;margin:2px 0 10px 14px}
.fl{float:left;margin:2px 14px 10px 0}
.w170{width:170px}.w220{width:220px}.w250{width:250px}.w300{width:300px}
.clear{clear:both}
.catbar{border:1px solid #a2a9b1;background:#f8f9fa;padding:8px 12px;font-size:13.5px;margin-top:16px}
.small{font-size:13px;color:#54595d}
/* article pages */
.page{max-width:1000px;margin:0 auto;padding:10px 18px 34px}
.fromline{font-size:13px;color:#54595d;margin:6px 0 0}
h1.title{font-family:'Linux Libertine','Hoefler Text',Georgia,serif;font-weight:400;font-size:29px;line-height:1.3;border-bottom:1px solid #a2a9b1;padding-bottom:5px;margin:4px 0 10px}
article.post h2{font-family:'Linux Libertine',Georgia,serif;font-weight:400;font-size:22px;border-bottom:1px solid #a2a9b1;padding-bottom:3px;margin:24px 0 10px}
article.post p{margin:0 0 11px}
.byline{font-size:13px;color:#54595d;margin-bottom:12px}
.infobox{float:right;width:290px;margin:2px 0 14px 18px;border:1px solid #a2a9b1;background:#f8f9fa;padding:5px;font-size:13px;line-height:1.5}
.infobox .ib-title{font-weight:700;text-align:center;font-size:14.5px;padding:4px 2px 6px}
.infobox figure{margin:0 0 6px}
.infobox figure img{width:100%;display:block}
.infobox figcaption{font-size:12px;color:#202122;padding:4px 2px 2px;line-height:1.4}
.infobox figcaption i,.thumb .cap i{color:#54595d}
.infobox table{width:100%;border-collapse:collapse}
.infobox th,.infobox td{text-align:left;vertical-align:top;padding:4px 5px;border-top:1px solid #eaecf0}
.infobox th{width:38%;font-weight:700;background:#eaecf0}
.toc{display:inline-block;border:1px solid #a2a9b1;background:#f8f9fa;padding:8px 16px 10px 12px;font-size:13.5px;margin:4px 0 10px}
.toc b{display:block;margin-bottom:4px}
.toc ol{margin:0;padding-left:20px}
.toc li{margin:2px 0}
.faq div{margin-bottom:10px}
.faq b{display:block}
ol.refs{font-size:13px;padding-left:22px}
ol.refs li{margin-bottom:4px}
.credit{font-size:12px;color:#54595d}
footer{border-top:1px solid #a2a9b1;background:#f8f9fa;margin-top:10px}
.foot-in{max-width:1240px;margin:0 auto;padding:16px;font-size:12.5px;color:#54595d;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
@media(max-width:820px){
 .mp-cols{flex-direction:column}
 .infobox{float:none;width:100%;margin:0 0 14px}
 .fr,.fl{float:none;margin:0 auto 12px}
 .w170,.w220,.w250,.w300{width:min(300px,100%)}
 .searchbox{margin-left:0}
 h1.title{font-size:24px}
}

/* portal tiles, search & result lists (v3 functionality pass) */
.portal{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:14px}
.tile{border:1px solid #a2a9b1;background:#f8f9fa;padding:12px 14px;display:block;color:#202122}
.tile:hover{text-decoration:none;border-color:#3366cc;background:#fff}
.tile b{display:block;font-family:'Linux Libertine',Georgia,serif;font-size:18px;font-weight:400;color:#3366cc}
.tile span{font-size:12.5px;color:#54595d}
.bigsearch{display:flex;gap:0;margin:14px 0 8px;max-width:560px}
.bigsearch input{flex:1;border:1px solid #a2a9b1;border-radius:2px 0 0 2px;padding:10px 12px;font-size:16px;background:#f8f9fa}
.bigsearch button{border:1px solid #a2a9b1;border-left:0;border-radius:0 2px 2px 0;background:#3366cc;color:#fff;padding:10px 18px;font-size:15px;cursor:pointer}
.resitem{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid #eaecf0}
.resimg{flex:0 0 110px}
.resimg img{width:110px;height:78px;object-fit:cover;border:1px solid #c8ccd1;display:block}
.restitle{font-family:'Linux Libertine',Georgia,serif;font-size:19px;line-height:1.3}
.resitem p{margin:3px 0}

/* theme toggle, effects, dark theme (v10) */
html{scroll-behavior:smooth}
.themebtn{border:1px solid #a2a9b1;background:#f8f9fa;color:#202122;border-radius:99px;padding:6px 13px;font-size:13px;cursor:pointer;white-space:nowrap}
.themebtn:hover{border-color:#3366cc}
#spj-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,#6a5cff,#9d8cff);z-index:999}
#spj-top{position:fixed;right:18px;bottom:20px;width:42px;height:42px;border-radius:50%;border:1px solid #a2a9b1;background:#fff;color:#3366cc;font-size:18px;cursor:pointer;display:none;box-shadow:0 4px 14px rgba(0,0,0,.18);z-index:998}
.rv{opacity:0;transform:translateY(16px);transition:opacity .65s ease,transform .65s ease}
.rv.inview{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){.rv{opacity:1;transform:none;transition:none} html{scroll-behavior:auto}}
html[data-theme="dark"] body{background:#0d1017;color:#d8dce6}
html[data-theme="dark"] a{color:#8ea6ff}
html[data-theme="dark"] .top{background:#12151d;border-bottom-color:#262c3d}
html[data-theme="dark"] .logo{color:#eef1f8}
html[data-theme="dark"] .searchbox input{background:#171b26;border-color:#333b52;color:#eef1f8}
html[data-theme="dark"] .themebtn{background:#171b26;border-color:#333b52;color:#eef1f8}
html[data-theme="dark"] h1.title, html[data-theme="dark"] h2{color:#eef1f8;border-bottom-color:#262c3d}
html[data-theme="dark"] .panel{border-color:#2c3448}
html[data-theme="dark"] .panel>h3{background:#1a2030;color:#eef1f8}
html[data-theme="dark"] .panel.green>h3{background:#14301f}
html[data-theme="dark"] .panel.blue>h3{background:#16283f}
html[data-theme="dark"] .infobox, html[data-theme="dark"] .toc{background:#141926;border-color:#2c3448;color:#d8dce6}
html[data-theme="dark"] .infobox th{background:#1a2030;color:#eef1f8}
html[data-theme="dark"] .thumb{background:#141926;border-color:#2c3448}
html[data-theme="dark"] .thumb .cap, html[data-theme="dark"] .small, html[data-theme="dark"] .fromline{color:#98a0b5}
html[data-theme="dark"] .catbar{background:#141926;border-color:#2c3448}
html[data-theme="dark"] footer{background:#12151d;border-top-color:#262c3d;color:#98a0b5}
html[data-theme="dark"] .tile{background:#141926;border-color:#2c3448;color:#d8dce6}
html[data-theme="dark"] .resitem{border-bottom-color:#262c3d}
html[data-theme="dark"] .bigsearch input{background:#171b26;border-color:#333b52;color:#eef1f8}
html[data-theme="dark"] .viz{background:linear-gradient(180deg,#131826,#10141f);border-color:#2c3448;box-shadow:none}
html[data-theme="dark"] .viz h3.vt, html[data-theme="dark"] .viz .stat b, html[data-theme="dark"] .viz .bar-row .bv, html[data-theme="dark"] .viz .tl .step b, html[data-theme="dark"] .viz .vs .side b{color:#eef1f8}
html[data-theme="dark"] .viz .stat, html[data-theme="dark"] .viz .vs .side{background:#171c2a;border-color:#2c3448}
html[data-theme="dark"] .viz .stat span, html[data-theme="dark"] .viz .note, html[data-theme="dark"] .viz .tl .step span{color:#98a0b5}
html[data-theme="dark"] .viz .track{background:#232a3f}
html[data-theme="dark"] #spj-top{background:#171b26;color:#aab4ff;border-color:#333b52}
