
:root{--coal:#292e32;--graphite:#3a4147;--orange:#df711b;--orange2:#ffa247;--cream:#fff9ef;--paper:#f3f3f1;--line:#d2d1cb;--ink:#272d31}
*{box-sizing:border-box}html{font-size:16px}body{margin:0;color:var(--ink);font-family:Arial,Verdana,sans-serif;background:repeating-linear-gradient(0deg,#e7e7e5 0,#e7e7e5 2px,#efefec 2px,#efefec 8px)}a{color:#a8480b}a:hover{text-decoration:underline}a:focus-visible{outline:3px solid #ff8c1c;outline-offset:2px}img{max-width:100%;height:auto} .shell{max-width:1200px;margin:0 auto;background:#fafaf8;box-shadow:0 0 20px #2224;border-left:1px solid #bbb;border-right:1px solid #bbb}
.masthead{height:222px;position:relative;overflow:hidden;background:#292c30}.masthead>img{width:100%;height:100%;object-fit:cover;object-position:center 55%;display:block}.masthead:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#1d2529ef 0%,#20282be8 27%,#2a2d2f55 61%,transparent 100%)}.brand{position:absolute;z-index:2;top:34px;left:34px;max-width:560px;color:#fff}.brand a{color:inherit;text-decoration:none}.brand strong{display:block;font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.45rem);letter-spacing:-.05em;text-shadow:1px 2px 2px #111}.brand strong span{color:#ffad5e}.brand p{font-size:1.08rem;max-width:410px;line-height:1.5;color:#f7eee1}.brand-mark{display:inline-flex;background:#e7781c;color:#fff;padding:7px 12px;border-radius:4px;transform:rotate(-4deg);font-weight:bold;letter-spacing:.04em;margin-bottom:7px}
.tabs{display:flex;flex-wrap:wrap;background:linear-gradient(#6c737a,#42484e 49%,#2c3034 50%,#343a40);border-top:3px solid #f29332;border-bottom:3px solid #d36b19;gap:1px;padding:0 14px}.tabs a{color:#fff;text-decoration:none;font-weight:bold;padding:15px 17px;display:block;border-right:1px solid #151b2055;text-shadow:0 1px #111}.tabs a.active,.tabs a:hover{background:linear-gradient(#ffc17b,#e67a1f);color:#2e2d2b;text-shadow:none;border-radius:4px 4px 0 0}
.content{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px;padding:22px 24px 32px}.main{min-width:0}.right{min-width:0}.page-title{font:700 clamp(1.6rem,2.7vw,2.25rem)/1.2 Georgia,serif;color:#30353a;margin:0 0 13px}.lead{font-size:1.05rem;line-height:1.6;color:#4e5458}.section-title{font:700 1.35rem Georgia,serif;margin:24px 0 12px;padding:10px 14px;color:#fff;background:linear-gradient(90deg,#d56717,#ef9843);border-left:6px solid #42484d}.section-title.dark{background:linear-gradient(90deg,#363e44,#62696d);border-left-color:#ef922c}
.problem-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.problem{background:linear-gradient(#fff,#f6f4f0);border:1px solid #d4d2ca;border-radius:5px;padding:14px;box-shadow:0 2px 3px #3331}.problem b{font-size:1.1rem;display:block;color:#343a40}.problem a{display:inline-block;margin-top:9px;font-weight:bold}.problem .number{float:right;color:#e16e15;font:700 1.8rem Georgia,serif}
.article-row{display:grid;grid-template-columns:175px minmax(0,1fr);gap:16px;padding:15px 0;border-bottom:1px dashed #c3c3c0}.article-row img{width:175px;height:118px;object-fit:cover;border:4px solid #fff;box-shadow:0 1px 5px #4443}.article-row h3{margin:0 0 5px;font:700 1.24rem Georgia,serif}.article-row p{margin:0 0 7px;line-height:1.45}.article-row a{font-weight:bold}.tag{display:inline-block;background:#f5e5d4;color:#81420d;border-radius:3px;padding:3px 7px;font-size:.77rem;font-weight:bold;margin-bottom:7px}
.sidebar-box{border:1px solid #b8bbc0;margin-bottom:15px;background:#fff;border-radius:5px;overflow:hidden;box-shadow:0 2px 3px #2221}.sidebar-box h2{background:linear-gradient(#5d646a,#333a40);color:#fff;font:700 1.2rem Georgia,serif;margin:0;padding:12px}.sidebar-box h2 span{color:#ffb060}.sidebar-box ul{list-style:none;padding:5px 13px;margin:0}.sidebar-box li{border-bottom:1px solid #e3e0db}.sidebar-box li:last-child{border:0}.sidebar-box a{display:block;padding:9px 4px;text-decoration:none;color:#30363a;line-height:1.35}.sidebar-box a:hover{color:#bb540e}.sidebar-box a:before{content:'▸';color:#df731c;margin-right:8px}.side-note{padding:14px;line-height:1.5;background:#fff5e7;border-left:4px solid #e78c2d;margin-top:8px}
.article-hero{width:100%;aspect-ratio:16/7;object-fit:cover;border-radius:5px;border:5px solid white;box-shadow:0 2px 8px #3333;margin:12px 0 10px}.article-body{font:1.055rem/1.75 Georgia,serif}.article-body h2{font:700 1.38rem Georgia,serif;margin:25px 0 10px;color:#a74d12;border-bottom:1px solid #e1c7b0;padding-bottom:5px}.article-body p{margin:0 0 16px}.article-body ol{padding-left:25px}.source-box{margin:28px 0 20px;padding:14px;background:#f2f4f3;border-left:5px solid #8c9b9d}.source-box h2{font-size:1.12rem;margin:0 0 9px}.source-box li{margin:6px 0;overflow-wrap:anywhere}.related{border-top:1px solid #ccc;margin-top:22px;padding-top:14px}.related a{display:block;padding:5px 0}.breadcrumbs{font-size:.88rem;color:#5b5e5f;margin:0 0 12px}.breadcrumbs a{color:#9d4c11}.rubric-intro{background:#f5ede3;border-left:5px solid #d97b2c;padding:13px 17px;line-height:1.55}
.footer{background:#333a40;color:#eee;padding:20px 26px;display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;font-size:.93rem}.footer a{color:#ffb870}.footer small{color:#c8c7c5}.mini-photo{width:100%;height:155px;object-fit:cover}.quick-steps{background:#fff;border:1px solid #d6d3cd;padding:14px 18px;line-height:1.6}.quick-steps ol{margin-bottom:0}.topic-nav{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.topic-nav a{background:#e8e9e7;padding:8px 11px;text-decoration:none;border-radius:4px;color:#40474b;font-weight:bold}.topic-nav a:hover{background:#f7dfc9}
@media(max-width:820px){.content{grid-template-columns:1fr;gap:15px;padding:17px}.right{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sidebar-box{margin:0}.masthead{height:205px}.brand{left:20px;top:26px}.tabs{padding:0 6px}.tabs a{padding:12px 10px;font-size:.92rem}}
@media(max-width:520px){.masthead{height:180px}.brand{top:20px;left:15px;right:10px}.brand strong{font-size:2rem}.brand p{font-size:.9rem;margin:6px 0}.tabs a{flex:1 1 42%;text-align:center;padding:11px 6px}.problem-grid,.right{grid-template-columns:1fr}.article-row{grid-template-columns:110px minmax(0,1fr);gap:10px}.article-row img{width:110px;height:98px}.article-row h3{font-size:1.05rem}.article-row p{font-size:.89rem}.content{padding:14px}.article-body{font-size:1rem;line-height:1.65}.article-hero{aspect-ratio:16/9}.footer{padding:18px}}
