:root{--paper:#f5f5f2;--surface:#fff;--ink:#202321;--muted:#686d69;--line:#d7dad6;--accent:#31559a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:"Segoe UI",Arial,sans-serif;line-height:1.62}a{color:#294f91}a:hover{text-decoration:none}img{max-width:100%}.shell,.site-width{max-width:1180px;margin:0 auto;padding:0 34px}.skip-link{position:absolute;left:-9999px;top:0;padding:10px 14px;background:#fff;color:#111;z-index:100}.skip-link:focus{left:10px;top:10px}.site-header{background:var(--surface);border-bottom:1px solid var(--line)}.masthead{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink)}.brand img{width:50px;height:50px;display:block;object-fit:contain}.brand-copy{display:flex;flex-direction:column;line-height:1.12}.brand-copy strong{font-size:1rem}.brand-copy span{margin-top:5px;color:var(--muted);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase}.global-nav{display:flex;align-items:center;gap:26px;font-size:.9rem}.global-nav a{color:#4d524e;text-decoration:none}.global-nav a:hover,.global-nav a:focus{color:var(--ink);text-decoration:underline}.publication-identity{background:var(--accent)}.publication-identity .shell{min-height:58px;display:flex;align-items:center}.publication-title,.publication-title:hover,.publication-title:focus{color:#fff;text-decoration:none}.publication-title strong{font-size:1.34rem;letter-spacing:-.02em}.publication-navigation{background:#fff;border-bottom:1px solid var(--line)}.site-nav{min-height:52px;display:flex;align-items:center;gap:22px;flex-wrap:wrap;font-size:.92rem}.site-nav a{color:#4d524e;text-decoration:none;padding:15px 0 11px;border-bottom:4px solid transparent}.site-nav a:hover{color:var(--ink);border-bottom-color:var(--accent)}.site-nav a[aria-current=page]{color:var(--ink);font-weight:650;border-bottom-color:var(--accent)}.page-introduction,.page-heading{padding-top:62px;padding-bottom:54px}.page-heading{background:transparent}.page-heading .site-width{max-width:1180px}.section-kicker,.eyebrow{margin:0 0 18px;color:var(--muted);font-size:.72rem;font-weight:750;letter-spacing:.18em;text-transform:uppercase}.page-introduction h1,.page-heading h1,.hero h1{max-width:none;margin:0 0 20px;font-size:clamp(2rem,4vw,3rem);line-height:1.12;letter-spacing:-.035em}.introduction-copy,.lead{max-width:none;margin:0;color:#424743;font-size:1.05rem}.content-section{padding:0 0 72px}.content-panel,.output-panel{width:100%;background:var(--surface);border-top:4px solid var(--accent);padding:28px 30px}.content-panel h2{margin:0 0 12px;font-size:1.35rem}.content-panel p{margin:0 0 18px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.feature-grid article{background:#fff;border-top:4px solid var(--accent);padding:24px 26px;box-shadow:none}.hero{padding:62px 0 68px;background:transparent}.hero-grid{max-width:1180px;margin:0 auto;padding:0 34px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(500px,1.1fr);gap:48px;align-items:center}.related,.tinted{background:#eceeeb;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.related-inner{padding-top:44px;padding-bottom:64px}.button-row,.mini-actions,.builder-actions{display:flex;gap:10px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--accent);border-radius:0;padding:10px 15px;background:#fff;color:var(--accent);font:inherit;font-weight:650;text-decoration:none;cursor:pointer}.button.primary{background:var(--accent);color:#fff}.button.secondary{background:#fff;color:var(--accent)}.button.small{padding:7px 10px;font-size:.88rem}.site-footer{background:#20272e;color:#dbe0e5;padding:48px 0 34px}.site-footer-inner{max-width:1180px;margin:0 auto;padding:0 34px}.site-footer-grid,.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:48px}.footer-brand-block img{width:135px;background:#fff;padding:7px 9px;display:block}.site-footer h2{color:#fff;font-size:15px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 15px}.site-footer p{color:#b9c1c8;font-size:14px;margin:12px 0 0}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{margin:8px 0}.site-footer a{color:#fff;text-decoration:none}.site-footer a:hover{text-decoration:underline}.footer-legal,.legal{border-top:1px solid #3a434b;margin-top:34px;padding-top:22px;color:#aeb6bd;font-size:13px}.window-shell{background:#fff;border:1px solid #bfc5cc;border-radius:7px;overflow:hidden;color:#111;font-size:14px;box-shadow:0 10px 30px rgba(25,35,50,.12)}.window-titlebar{height:34px;background:#f3f3f3;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;padding:0 9px;color:#747474}.app-icon{background:#31559a;color:#fff;border-radius:5px;width:21px;height:21px;display:grid;place-items:center;font-size:10px;font-weight:700}.window-buttons{letter-spacing:.7rem}.window-body{padding:27px 32px}.app-header{display:grid;grid-template-columns:130px 1fr;align-items:center;gap:20px}.sample-logo{color:#31559a;font-size:10px;line-height:1.05;font-weight:700}.sample-logo strong{font-size:13px}.app-header h2{font-size:25px;margin:0;color:#152033}.app-header p{margin:3px 0;color:#686d69;font-size:14px}.window-shell hr{border:0;border-top:1px solid #d7dad6;margin:20px 0 15px}.window-shell h3{color:#31559a;font-size:18px;margin:0 0 9px}.window-shell p{margin:6px 0}.preview-list{display:grid;grid-template-columns:140px 1fr;margin:0}.preview-list dt{font-weight:700;padding:5px 0}.preview-list dd{margin:0;padding:5px 0}.fake-link{color:#294f91;text-decoration:underline}.window-footer{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:12px;align-items:center;background:#f7f8fa;color:#686d69;padding:10px 28px;font-size:12px}.window-footer span:nth-child(2){text-align:center}.window-footer span:nth-child(3){text-align:right}.builder-wrap{max-width:1500px;margin:0 auto;padding:0 34px 72px}.builder-grid{display:grid;grid-template-columns:minmax(350px,500px) minmax(580px,1fr);gap:28px;align-items:start}.config-form,.output-panel{background:#fff;border:1px solid var(--line)}.config-form fieldset{border:0;border-top:1px solid var(--line);padding:21px 24px;margin:0}.config-form legend{font-weight:750;font-size:1.08rem;color:#31559a;padding-top:18px}.config-form label{display:grid;gap:5px;margin:14px 0;font-weight:650}.config-form input,.config-form textarea{width:100%;font:inherit;border:1px solid #aeb5b0;padding:10px;background:#fff}.config-form input:focus,.config-form textarea:focus{outline:3px solid rgba(49,85,154,.18);border-color:var(--accent)}.hint,.field-intro,.quiet{color:var(--muted);font-size:.88rem;font-weight:400}.check-label{grid-template-columns:auto 1fr!important;align-items:center}.check-label input{width:auto}.link-pair{display:grid;grid-template-columns:1fr 1.3fr;gap:12px}.sticky-actions{position:sticky;top:0;background:#eef1f6;padding:15px 24px;z-index:2;border-bottom:1px solid var(--line)}.file-button input{position:absolute;opacity:0;width:1px;height:1px}.builder-output{display:grid;gap:24px}.output-panel{padding:22px}.panel-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.panel-heading h2{margin:0;font-size:1.35rem}.status{display:inline-block;padding:5px 9px;font-size:.8rem;font-weight:700}.status.good{background:#e0f2e7;color:#176233}.status.bad{background:#f9e3e3;color:#8c2222}.status.pending{background:#fff0c7;color:#6e5200}.configurator-preview{font-size:13px;box-shadow:none}.configurator-preview .window-body{padding:23px 28px}.section-title-row{display:flex;align-items:center;justify-content:space-between}.section-title-row button{padding:5px 9px}.json-panel pre,.code-block{background:#17202b;color:#eef3f8;padding:18px;overflow:auto;white-space:pre;tab-size:2}.json-panel pre{max-height:620px;margin:0}.error-list{color:#8c2222;margin-top:14px}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:40px}.article-layout article h2{margin-top:34px}.article-layout article h2:first-child{margin-top:0}.article-aside{border-left:4px solid var(--accent);padding-left:20px;align-self:start}.callout{padding:17px 19px;background:#eef1f6;border-left:4px solid var(--accent);margin:24px 0}.reference-table>div{border-top:1px solid var(--line);padding:15px 0}.reference-table code{font-weight:700;color:#31559a}.release-card{display:grid;grid-template-columns:1fr 250px;gap:30px;border:0;border-top:4px solid var(--accent);padding:28px 0;margin-bottom:30px}.release-meta{display:grid;gap:7px;align-content:start}.status-label{display:inline-block;background:#fff0c7;padding:5px 9px;font-size:.8rem;font-weight:700}@media(max-width:1050px){.hero-grid,.builder-grid{grid-template-columns:1fr}.builder-output{grid-row:1}.article-layout{grid-template-columns:1fr}.article-aside{border-left:0;border-top:4px solid var(--accent);padding:18px 0 0}}@media(max-width:980px){.site-footer-grid,.footer-grid{grid-template-columns:1fr 1fr}.footer-brand-block{grid-column:1/-1}}@media(max-width:680px){.shell,.site-width,.site-footer-inner,.hero-grid,.builder-wrap{padding-left:20px;padding-right:20px}.masthead{min-height:72px}.brand img{width:44px;height:44px}.brand-copy span{display:none}.global-nav{gap:16px}.global-nav a:nth-child(2){display:none}.publication-identity .shell{min-height:52px}.site-nav{min-height:46px;gap:17px}.site-nav a{padding:11px 0 8px}.page-introduction,.page-heading{padding-top:42px;padding-bottom:42px}.feature-grid,.site-footer-grid,.footer-grid,.release-card{grid-template-columns:1fr}.footer-brand-block{grid-column:auto}.window-shell{font-size:11px}.window-body,.configurator-preview .window-body{padding:17px}.app-header{grid-template-columns:75px 1fr;gap:10px}.app-header h2{font-size:18px}.app-header p{font-size:12px}.preview-list{grid-template-columns:105px 1fr}.window-footer{grid-template-columns:1fr;padding:8px 15px}.window-footer span:nth-child(2),.window-footer span:nth-child(3){display:none}.link-pair{grid-template-columns:1fr}.panel-heading{align-items:flex-start;flex-direction:column}.builder-grid{display:block}.builder-output{margin-bottom:24px}.section-title-row button{display:none}}