.draft-primer-optics-primer{--ink:#18232d;--muted:#667079;--paper:#f8f7f3;--line:#cdd2d5;--blue:#2258ba;--panel:#fff;--soft:#eef1f2;color-scheme:light}
.draft-primer-optics-primer *{box-sizing:border-box}
.draft-primer-optics-primer a{color:var(--blue);text-underline-offset:4px;overflow-wrap:anywhere}
.draft-primer-optics-primer a:hover{text-decoration-thickness:2px}
.draft-primer-optics-primer button,.draft-primer-optics-primer input,.draft-primer-optics-primer select{font:inherit}
.draft-primer-optics-primer button:focus-visible,.draft-primer-optics-primer a:focus-visible,.draft-primer-optics-primer input:focus-visible,.draft-primer-optics-primer select:focus-visible,.draft-primer-optics-primer summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.draft-primer-optics-primer .eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}
.draft-primer-optics-primer .source-intro{border-left:3px solid var(--blue);padding:16px 24px;background:#edf1f6;font-size:15px;line-height:1.65;margin:32px 0}
.draft-primer-optics-primer .source-intro p{margin:0}
.draft-primer-optics-primer .figure{margin:36px 0 42px;border:1px solid var(--line);background:#f5f3ed}
.draft-primer-optics-primer .diagram-scroll{overflow-x:auto}
.draft-primer-optics-primer .figure img{display:block;width:100%;min-width:650px;height:auto}
.draft-primer-optics-primer .figure figcaption{padding:19px 22px;border-top:1px solid var(--line);font-size:14px;line-height:1.6;color:#52616d;background:#fff}
.draft-primer-optics-primer .figure-tools{display:flex;gap:18px;margin-top:10px;font-size:12px}
.draft-primer-optics-primer .table-wrap{overflow-x:auto;margin:30px 0;border:1px solid var(--line);background:#fff}
.draft-primer-optics-primer table{border-collapse:collapse;width:100%;min-width:610px;font-size:14px;line-height:1.5}
.draft-primer-optics-primer th,.draft-primer-optics-primer td{text-align:left;padding:15px 18px;vertical-align:top;border-bottom:1px solid var(--line)}
.draft-primer-optics-primer th{background:#edf0f1;font-size:12px;letter-spacing:.025em}
.draft-primer-optics-primer tr:last-child td{border-bottom:0}
.draft-primer-optics-primer td:first-child{font-weight:600}
.draft-primer-optics-primer blockquote{margin:30px 0;padding:15px 25px;border-left:4px solid var(--blue)}
.draft-primer-optics-primer .interactive{padding:27px;border:1px solid var(--ink);margin:30px 0;background:#fff}
.draft-primer-optics-primer .interactive h3{margin:5px 0 12px;font-size:25px}
.draft-primer-optics-primer .interactive p{font-size:14px;line-height:1.65;color:var(--muted)}
.draft-primer-optics-primer .controls{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.draft-primer-optics-primer .controls label{display:block;font-size:12px;letter-spacing:.03em;font-weight:700}
.draft-primer-optics-primer .controls input,.draft-primer-optics-primer .interactive select{display:block;width:100%;padding:10px;border:1px solid var(--line);margin-top:8px;background:#f9fafb;border-radius:2px}
.draft-primer-optics-primer .result{background:var(--ink);color:#fff;margin-top:22px;padding:22px}
.draft-primer-optics-primer .result strong{font-size:34px;line-height:1.2}
.draft-primer-optics-primer .result small{display:block;color:#d4dee6;font-size:13px;line-height:1.6;margin-top:10px}
.draft-primer-optics-primer .permissions-options{display:flex;gap:12px;flex-wrap:wrap}
.draft-primer-optics-primer .permissions-options button{border:1px solid var(--line);background:#f4f5f5;padding:9px 14px;cursor:pointer;font-size:13px}
.draft-primer-optics-primer .permissions-options button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.draft-primer-optics-primer .permission-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:18px}
.draft-primer-optics-primer .permission-grid label{font-size:13px;font-weight:700}
.draft-primer-optics-primer .permission-grid .check{display:flex;gap:10px;align-items:center}
@media(max-width:760px){
.draft-primer-optics-primer .controls{grid-template-columns:1fr}
.draft-primer-optics-primer .permission-grid{grid-template-columns:1fr}
.draft-primer-optics-primer .interactive{padding:20px}
.draft-primer-optics-primer .result strong{font-size:28px}
.draft-primer-optics-primer .figure figcaption{padding:15px}
.draft-primer-optics-primer .figure-tools:after{content:'Swipe diagram to explore';color:var(--muted);margin-left:auto}
.draft-primer-optics-primer .table-wrap{max-width:100%}
}
@media(prefers-reduced-motion:reduce){
.draft-primer-optics-primer *{transition:none!important}
}
@media print{
.draft-primer-optics-primer .figure-tools{display:none!important}
.draft-primer-optics-primer .figure,.draft-primer-optics-primer .interactive,.draft-primer-optics-primer .source-intro{break-inside:avoid}
.draft-primer-optics-primer .figure img{min-width:0}
.draft-primer-optics-primer .figure{margin:20px 0}
.draft-primer-optics-primer .diagram-scroll,.draft-primer-optics-primer .table-wrap{overflow:visible}
.draft-primer-optics-primer table{min-width:0;font-size:9pt}
.draft-primer-optics-primer a{color:inherit}
.draft-primer-optics-primer .result{background:#eee;color:#111}
.draft-primer-optics-primer .result small{color:#333}
}
.draft-primer-optics-primer{--ink:#152b3b;--muted:#58707e;--paper:#f8f8f3;--line:#c4d0d5;--blue:#1457a6;--cyan:#007f8b}
.draft-primer-optics-primer .heading-link{font-family:Arial;font-size:19px;text-decoration:none;opacity:0;margin-left:10px;color:var(--cyan)}
.draft-primer-optics-primer h2:hover .heading-link,.draft-primer-optics-primer .heading-link:focus-visible{opacity:1}
.draft-primer-optics-primer .figure{background:#f6f6f0}
.draft-primer-optics-primer .figure-gallery{padding:30px 0 60px}
.draft-primer-optics-primer .figure-gallery h2{font:400 28px/1.3 Georgia;margin-top:40px}
.draft-primer-optics-primer .figure-gallery .figure{margin-top:15px}
.draft-primer-optics-primer .interactive{border-top:4px solid var(--cyan);padding:25px}
.draft-primer-optics-primer .widget-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:var(--cyan)}
.draft-primer-optics-primer .interactive h3{font:400 30px/1.15 Georgia;margin-top:11px;letter-spacing:-.02em}
.draft-primer-optics-primer .interactive .widget-note{font-size:12px;margin-bottom:0;border-top:1px solid var(--line);padding-top:14px}
.draft-primer-optics-primer .link-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:23px 0}
.draft-primer-optics-primer .link-stages button{border:1px solid var(--line);background:#f4f6f5;min-height:106px;padding:12px 9px;text-align:left;line-height:1.3;font-size:13px;cursor:pointer;color:var(--ink);display:flex;flex-direction:column;align-items:start;gap:9px}
.draft-primer-optics-primer .link-stages button small{font-size:10px;line-height:1.3}
.draft-primer-optics-primer .link-stages button .stage-number{font-size:11px;letter-spacing:.08em;color:var(--cyan)}
.draft-primer-optics-primer .link-stages button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}
.draft-primer-optics-primer .link-stages button[aria-pressed=true] .stage-number{color:#8fe0e2}
.draft-primer-optics-primer .sequence-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.draft-primer-optics-primer .sequence-controls button{padding:9px 11px;border:1px solid var(--line);color:var(--ink);background:white;font-size:12px;cursor:pointer}
.draft-primer-optics-primer .sequence-controls [data-play]{background:#e4f0f0;border-color:#9ecbce}
.draft-primer-optics-primer .sequence-controls button:disabled{color:#9aa8ae;background:#f7f8f6;cursor:default}
.draft-primer-optics-primer .step-counter{margin-left:auto;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.draft-primer-optics-primer .sequence-detail{background:#ecf3f3;border:1px solid #c1dadd;margin-top:17px;padding:21px;min-height:207px}
.draft-primer-optics-primer .detail-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--cyan)}
.draft-primer-optics-primer .sequence-detail h4{font-size:21px;line-height:1.35;margin:9px 0}
.draft-primer-optics-primer .sequence-detail p{margin:8px 0 0;color:var(--ink);font-size:15px}
.draft-primer-optics-primer .budget-widget .controls{gap:12px;margin-top:24px}
.draft-primer-optics-primer .budget-widget .controls label{font-size:12px;line-height:1.5}
.draft-primer-optics-primer .budget-widget .controls input{font-size:20px;font-variant-numeric:tabular-nums}
.draft-primer-optics-primer .budget-widget .fixed-assumption{font-size:12px}
.draft-primer-optics-primer .budget-output{margin-top:18px;border:1px solid var(--line)}
.draft-primer-optics-primer .budget-total{background:var(--ink);color:white;padding:21px 23px}
.draft-primer-optics-primer .budget-total>span{display:block;color:#9dd8de;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.draft-primer-optics-primer .budget-total strong{display:block;font-size:38px;font-weight:500;font-variant-numeric:tabular-nums;line-height:1.2;margin:10px 0 5px}
.draft-primer-optics-primer .budget-total small{display:block;color:#d9e9ed;line-height:1.5;font-size:13px}
.draft-primer-optics-primer .budget-bars{padding:22px 20px 0}
.draft-primer-optics-primer .budget-bar-row{display:grid;grid-template-columns:78px minmax(50px,1fr) 78px;gap:12px;align-items:center;font-size:12px;margin-bottom:12px}
.draft-primer-optics-primer .budget-bar-row strong{text-align:right;font-variant-numeric:tabular-nums}
.draft-primer-optics-primer .budget-bar-track{height:22px;background:#edf2f2}
.draft-primer-optics-primer .budget-bar{height:100%;background:var(--blue);min-width:1px}
.draft-primer-optics-primer .budget-bar.b{background:var(--cyan)}
.draft-primer-optics-primer .budget-math{padding:0 20px 12px;font-size:12px!important;line-height:1.8!important;font-variant-numeric:tabular-nums}
.draft-primer-optics-primer .budget-formula{font-size:13px;border-left:3px solid var(--cyan);padding:12px 15px;margin:17px 0;background:#eef4f4}
.draft-primer-optics-primer .budget-formula strong{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:5px}
.draft-primer-optics-primer .budget-formula code{font:12px/1.6 Arial;overflow-wrap:anywhere}
.draft-primer-optics-primer .budget-error{padding:16px}
.draft-primer-optics-primer .source-intro{background:#edf4f5;border-color:var(--cyan)}
.draft-primer-optics-primer .figure-tools{flex-wrap:wrap}
.draft-primer-optics-primer img{max-width:100%}
@media(max-width:760px){
.draft-primer-optics-primer .link-stages{grid-template-columns:repeat(2,minmax(0,1fr))}
.draft-primer-optics-primer .link-stages button{min-height:93px}
.draft-primer-optics-primer .interactive{padding:19px}
.draft-primer-optics-primer .interactive h3{font-size:27px}
.draft-primer-optics-primer .sequence-detail{min-height:270px;padding:18px}
.draft-primer-optics-primer .budget-bars{padding:18px 12px 0}
.draft-primer-optics-primer .budget-bar-row{grid-template-columns:65px minmax(20px,1fr) 65px;gap:8px;font-size:11px}
.draft-primer-optics-primer .budget-widget .controls{grid-template-columns:1fr}
.draft-primer-optics-primer .heading-link{opacity:.65}
.draft-primer-optics-primer .figure-tools:after{content:'Swipe wide diagrams to explore';width:100%;margin-left:0}
.draft-primer-optics-primer .figure-gallery h2{font-size:24px}
}
@media print{
.draft-primer-optics-primer .sequence-controls,.draft-primer-optics-primer .heading-link{display:none}
.draft-primer-optics-primer .link-stages button{font-size:9pt;min-height:60px}
.draft-primer-optics-primer .sequence-detail{min-height:0}
.draft-primer-optics-primer .budget-total{background:#eee;color:#111}
.draft-primer-optics-primer .budget-total>span,.draft-primer-optics-primer .budget-total small{color:#333}
.draft-primer-optics-primer .budget-bar{print-color-adjust:exact;-webkit-print-color-adjust:exact}
.draft-primer-optics-primer .figure-gallery h2{break-after:avoid}
.draft-primer-optics-primer .figure{break-inside:avoid}
.draft-primer-optics-primer .interactive{break-inside:auto}
}
.draft-primer-optics-primer{min-width:0;max-width:100%;color:inherit}
.draft-primer-optics-primer .diagram-scroll,.draft-primer-optics-primer .table-wrap{max-width:100%;overscroll-behavior-x:contain}
.draft-primer-optics-primer .figure-tools{flex-wrap:wrap}
.draft-primer-optics-primer .controls>*{min-width:0}
.draft-primer-optics-primer .interactive button,.draft-primer-optics-primer .interactive input,.draft-primer-optics-primer .interactive select{font-family:inherit}
.draft-primer-optics-primer .interactive h3{font-family:inherit;font-weight:600}
.draft-primer-optics-primer .widget-fallback{margin:0}
@media(max-width:760px){.draft-primer-optics-primer .figure-tools:after{flex-basis:100%;margin-left:0}}
