:root{--paper:#faf7f0;--white:#fffdf8;--ink:#172b21;--green:#1b5441;--deep:#143f30;--muted:#59665d;--line:#dcded1;--lime:#d3e6a5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:32px}
body{margin:0;font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:var(--green);text-underline-offset:4px;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
a:focus-visible,summary:focus-visible{outline:3px solid #87a84b;outline-offset:5px}
img{max-width:100%;display:block}
h1,h2,h3,p{margin:0}
h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.045em;line-height:1.08;text-wrap:balance}
h1{font-size:clamp(46px,6.1vw,78px);max-width:820px}
h1 em{font-weight:400;color:var(--green)}
h2{font-size:clamp(31px,3.3vw,43px);margin-bottom:24px}
h3{font-size:18px;line-height:1.4;letter-spacing:-.015em;margin:28px 0 9px}
p{color:var(--muted)}
p+p{margin-top:16px}
ul,ol{padding-left:23px;color:var(--muted);margin:16px 0 0}
li+li{margin-top:10px}
strong{color:var(--ink);font-weight:650}
code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.88em;overflow-wrap:anywhere}
.wrap{max-width:1180px;margin:auto;padding-inline:40px}
.skip{position:absolute;left:20px;top:-100px;z-index:10;padding:12px 20px;background:var(--deep);color:white}
.skip:focus{top:10px}
.site-header{border-bottom:1px solid var(--line)}
.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-size:24px;font-weight:750;letter-spacing:-1.1px}
.brand img{width:34px;height:34px}
.primary-nav{display:flex;gap:27px;flex-wrap:wrap;font-size:13px;font-weight:550}
.primary-nav a{text-decoration:none;color:var(--muted);padding-block:12px}
.primary-nav a[aria-current=page]{color:var(--green);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}
.hero{padding:73px 0 65px;border-bottom:1px solid var(--line)}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:650;letter-spacing:.13em;text-transform:uppercase;color:var(--green);margin-bottom:25px}
.eyebrow::before{content:"";width:7px;height:7px;flex:none;border-radius:50%;background:var(--green)}
.intro{font-size:18px;line-height:1.8;max-width:680px;margin-top:26px}
.meta{font-size:12px;margin-top:22px}
.doc-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:76px;padding-block:55px 90px;align-items:start}
.contents{position:sticky;top:30px}
.contents p{font-size:10px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:17px;font-weight:650;color:var(--green)}
.contents a{display:block;font-size:13px;text-decoration:none;line-height:1.6;padding:9px 0;color:var(--muted)}
.contents a:hover{color:var(--green);text-decoration:underline}
.contents .aside-note{padding-top:22px;margin-top:22px;border-top:1px solid var(--line);font-size:12px;text-transform:none;letter-spacing:0;font-weight:400;line-height:1.75;color:var(--muted)}
.doc-content{min-width:0;max-width:800px}
.doc-section+.doc-section{margin-top:50px;padding-top:48px;border-top:1px solid var(--line)}
.section-number{font-family:ui-monospace,SFMono-Regular,monospace;display:block;font-size:11px;letter-spacing:.07em;color:var(--green);margin-bottom:15px}
.callout{padding:24px 27px;background:#eef1e5;border-left:3px solid var(--green);margin:24px 0;border-radius:0 8px 8px 0}
.callout p{font-size:14px;color:#354d3d}
.callout strong{color:var(--deep)}
.endpoint{margin:24px 0;padding:24px 27px;background:var(--deep);color:var(--paper);border-radius:9px}
.endpoint span{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--lime);margin-bottom:7px}
.endpoint code{font-size:16px}
.steps{list-style:none;padding:0;counter-reset:step;margin:27px 0}
.steps>li{position:relative;counter-increment:step;padding:0 0 24px 46px;margin:0}
.steps>li::before{content:counter(step);position:absolute;left:0;top:2px;background:#e9eddf;border:1px solid #d3dcc7;color:var(--green);width:28px;height:28px;border-radius:50%;text-align:center;font-size:12px;line-height:26px;font-weight:650}
.steps strong{display:block;margin-bottom:3px}
.steps p{font-size:15px}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:26px}
.card{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:24px}
.card h3{margin:0 0 10px;font-size:17px}
.card p{font-size:14px}
.prompt{padding:22px 25px;border:1px solid var(--line);border-radius:8px;background:var(--white);margin:15px 0}
.prompt .prompt-label{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--green);margin-bottom:9px}
.prompt blockquote{font-family:Georgia,"Times New Roman",serif;font-size:21px;line-height:1.5;color:var(--ink);margin:0}
.table-scroll{max-width:100%;overflow-x:auto;margin-top:24px;border:1px solid var(--line);border-radius:8px}
table{border-collapse:collapse;width:100%;text-align:left;font-size:13px;background:var(--white)}
th,td{vertical-align:top;padding:14px 17px;border-bottom:1px solid var(--line)}
th{color:var(--green);font-weight:650;font-size:11px;text-transform:uppercase;letter-spacing:.04em;background:#eef1e5}
td{color:var(--muted)}
td:first-child{color:var(--ink)}
tr:last-child td{border-bottom:0}
table code{font-size:12px}
.tool-table td:first-child{width:32%}
.tool-table td:nth-child(2){width:15%;white-space:nowrap}
.footnote{font-size:13px;margin-top:17px}
.contact-box{background:var(--deep);color:var(--paper);border-radius:10px;padding:34px;margin-top:28px}
.contact-box h3{margin:0 0 12px;font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:31px}
.contact-box p{color:#c8d5c5;font-size:15px}
.contact-box a{color:var(--paper);overflow-wrap:anywhere}
.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:1px solid var(--green);background:var(--green);color:var(--paper);border-radius:99px;text-decoration:none;font-size:13px;font-weight:600;padding:12px 21px;margin-top:23px}
.contact-box .button{background:var(--lime);color:var(--deep);border-color:var(--lime)}
details{border-bottom:1px solid var(--line);padding:23px 0}
details:first-of-type{border-top:1px solid var(--line);margin-top:26px}
summary{cursor:pointer;font-weight:600;color:var(--ink);padding-right:12px;line-height:1.5}
details p{font-size:15px;margin-top:15px}
.site-footer{border-top:1px solid var(--line);padding:28px 0 35px}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px}
.footer-links{display:flex;gap:23px;flex-wrap:wrap}
.footer-links a{text-decoration:none}
.footer-note{font-size:11px}
@media(max-width:920px){.doc-layout{grid-template-columns:165px minmax(0,1fr);gap:40px}.wrap{padding-inline:28px}.tool-table td:first-child{width:35%}.cards{grid-template-columns:1fr}}
@media(max-width:680px){.wrap{padding-inline:22px}.header-inner{min-height:100px;padding-block:17px;align-items:flex-start;flex-direction:column;gap:5px}.brand{font-size:22px}.brand img{width:30px;height:30px}.primary-nav{gap:23px;font-size:12px}.primary-nav a{padding-block:5px}.hero{padding:43px 0 39px}.intro{font-size:16px;margin-top:23px}.eyebrow{margin-bottom:21px}.doc-layout{display:block;padding-block:29px 60px}.contents{position:static;display:flex;gap:4px 18px;flex-wrap:wrap;padding-bottom:25px;margin-bottom:34px;border-bottom:1px solid var(--line)}.contents p{width:100%;margin-bottom:3px}.contents a{padding:5px 0;font-size:12px}.contents .aside-note{display:none}.doc-section+.doc-section{margin-top:37px;padding-top:35px}h2{margin-bottom:21px}.callout,.endpoint{padding:20px}.endpoint code{font-size:14px}.prompt{padding:21px}.prompt blockquote{font-size:20px}.contact-box{padding:26px}th,td{padding:12px}.tool-table td:first-child{min-width:145px}.tool-table td:last-child{min-width:190px}.footer-inner{align-items:flex-start;flex-direction:column;gap:15px}.footer-links{gap:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.contents,.primary-nav,.skip{display:none}.doc-layout{display:block}.hero{padding:25px 0}.wrap{max-width:none;padding:0}.site-header,.site-footer{padding:15px 0}.table-scroll{overflow:visible}.doc-section{break-inside:avoid}.contact-box,.endpoint{background:white;color:black;border:1px solid #aaa}.contact-box p,.contact-box a,.endpoint span{color:black}}
