/* Approved r2 reference; scoped by scripts/port-r2-styles.mjs. */
/* Batch 6 — a technical field notebook within the Living Canvas. */
.portfolio .te-figure{--te-bg:#181919;--te-text:#eeeadf;--te-muted:#c3beb4;--te-line:#514d46;background:var(--te-bg);color:var(--te-text);padding:32px;border:1px solid var(--te-line);border-radius:7px;overflow:visible;margin:35px 0}
.portfolio .te-figure *{box-sizing:border-box;min-width:0}.portfolio .te-figure :is(h3:not(:where([data-portfolio-heading-source])),:where([data-portfolio-heading-source="h3"])),.portfolio .te-figure :is(h4:not(:where([data-portfolio-heading-source])),:where([data-portfolio-heading-source="h4"])),.portfolio .te-figure strong{color:var(--te-text)}.portfolio .te-figure p,.portfolio .te-figure label,.portfolio .te-figure small,.portfolio .te-figure figcaption,.portfolio .te-figure span{color:var(--te-muted)}.portfolio .te-figure .eyebrow{color:#ffab7c}.portfolio .te-figure p{font-size:15px;line-height:1.65;margin:12px 0}.portfolio .te-figure .figure-head :is(h3:not(:where([data-portfolio-heading-source])),:where([data-portfolio-heading-source="h3"])){font-size:clamp(23px,2.6vw,33px);line-height:1.2;letter-spacing:-.9px;margin:9px 0 12px}.portfolio .te-figure :is(h4:not(:where([data-portfolio-heading-source])),:where([data-portfolio-heading-source="h4"])){font-size:21px;line-height:1.25;margin:12px 0}.portfolio .te-figure figcaption{border-top:1px solid var(--te-line);padding-top:17px;margin-top:25px;font-size:12px;line-height:1.65}.portfolio .te-figure input,.portfolio .te-figure select,.portfolio .te-figure textarea{font:inherit;font-size:14px;background:#111313;color:#f4efe6;border:1px solid #777268;border-radius:4px;padding:11px;min-height:44px;max-width:100%}.portfolio .te-figure button{font:inherit;cursor:pointer;min-height:44px;background:#222423;border:1px solid #726b5d;border-radius:4px;color:#f2eee4;padding:10px 14px;font-size:12px;line-height:1.5}.portfolio .te-figure button:hover{border-color:#ffab7c}.portfolio .te-figure button[aria-pressed=true]{background:#f5a26a;border-color:#f5a26a;color:#211912}.portfolio .te-figure :focus-visible{outline:3px solid #ffbf90;outline-offset:4px}.portfolio .te-figure input[type=range]{padding:0;width:100%;accent-color:#ffa566;cursor:pointer}.portfolio .te-figure output{font-family:monospace;display:block;color:#f7b27d;font-size:24px;margin:6px 0}
.portfolio .te-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:24px 0}.portfolio .te-two{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.portfolio .te-note{background:#232524;border:1px solid #625c52;border-radius:5px;padding:25px}.portfolio .te-paper{background:#ebdfcb;box-shadow:7px 8px 0 #0d0e0e}.portfolio .te-paper :is(h4:not(:where([data-portfolio-heading-source])),:where([data-portfolio-heading-source="h4"])),.portfolio .te-paper strong,.portfolio .te-paper p,.portfolio .te-paper span,.portfolio .te-paper div{color:#272520}.portfolio .te-paper .eyebrow{color:#704221}.portfolio .te-status{border-left:2px solid #ff9b56;padding:8px 14px;background:#212321;overflow-wrap:anywhere}.portfolio .te-transcript{margin-top:15px}.portfolio .te-transcript summary{font-size:12px;color:#d0c7b7;cursor:pointer;min-height:32px}.portfolio .te-transcript p{font-size:13px}.portfolio .te-small{font-size:12px!important;color:#c3beb4!important}
.portfolio .te-theater{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px;background:#0c0e0e;border:1px solid #45443e;border-radius:7px;box-shadow:0 20px 45px #0003}.portfolio .te-theater[data-layout="1"]{grid-template-columns:1fr}.portfolio .te-stream-tile{background:linear-gradient(155deg,#343839,#141718);border:1px solid #535957;position:relative}.portfolio .te-stream-top{display:flex;justify-content:space-between;gap:10px;padding:12px;border-bottom:1px solid #56564c;font-family:monospace;font-size:11px}.portfolio .te-stream-top small{font-size:9px}.portfolio .te-stream-scene{height:100px;position:relative;background:repeating-linear-gradient(0deg,transparent 0 21px,#c6c3ac15 22px 23px);display:grid;place-items:center;overflow:hidden}.portfolio .te-stream-scene i{height:85px;width:110px;border:1px solid #d4b99466;transform:skewY(-15deg) rotate(15deg);position:absolute}.portfolio .te-stream-scene b{font-size:43px;line-height:1;font-weight:400;color:#dabfa1}.portfolio .te-stream-tile>p{font-size:12px!important;padding:0 12px;margin:10px 0;line-height:1.5}.portfolio .te-stream-tile>p small{font-size:10px}
.portfolio .te-input-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:20px;padding:22px 0}.portfolio .te-input-grid label{font-size:12px}.portfolio .te-input-grid select{display:block;width:100%;margin-top:12px}.portfolio .te-cache-lanes{display:grid;grid-template-columns:1fr 1fr;gap:14px}.portfolio .te-lane{border:1px solid #655d50;padding:22px;background:#262726}.portfolio .te-cached{background:#332b23;border-color:#bc8357}.portfolio .te-lane-path{display:flex;align-items:center;gap:8px;margin-top:22px;min-height:38px;font-size:12px}.portfolio .te-lane-path span{border:1px solid #6e675a;padding:9px}.portfolio .te-number{display:block;font-size:clamp(33px,4vw,52px);font-family:monospace;font-weight:400;letter-spacing:-2px;margin-top:22px}.portfolio .te-lane small{font-size:11px;display:block}.portfolio .te-meter{background:#111313;height:7px;margin-top:20px}.portfolio .te-meter i{display:block;background:#ffa46e;height:100%;min-width:0}.portfolio .te-read-row{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #665e50;padding:20px 0;font-size:13px}.portfolio .te-read-row strong span{color:#ffba87}.portfolio .te-path-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.portfolio .te-path-steps span{background:#232523;border:1px solid #66604e;padding:13px;font-family:monospace;font-size:11px}.portfolio .te-path-steps span.is-lit{background:#f5ad78;color:#241e17;box-shadow:0 0 30px #ffad6920}
.portfolio .te-questions{margin:25px 0}.portfolio .te-question{display:grid;grid-template-columns:32px 1fr 165px;gap:14px;padding:18px 0;border-top:1px solid #585349;align-items:center}.portfolio .te-question-no{font-family:monospace;color:#ffb17e!important}.portfolio .te-question :is(h4:not(:where([data-portfolio-heading-source])),:where([data-portfolio-heading-source="h4"])){font-size:17px;margin:0 0 4px}.portfolio .te-question p{font-size:13px;margin:0}.portfolio .te-question select{width:100%;font-size:12px}.portfolio .te-questions+.te-paper{margin:15px 0 20px}.portfolio .te-question-summary{font-size:14px;margin:8px 0}.portfolio .te-budget{display:grid;grid-template-columns:1fr 1.05fr;gap:28px;margin-top:28px}.portfolio .te-budget-inputs{display:grid;grid-template-columns:1fr 1fr;gap:17px;align-items:start}.portfolio .te-budget-inputs label{font-size:12px}.portfolio .te-budget-inputs>button{align-self:end}.portfolio .te-money-input{position:relative;margin-top:8px}.portfolio .te-money-input span{position:absolute;left:11px;top:13px}.portfolio .te-money-input input{width:100%;padding-left:26px}.portfolio .te-budget-paper{background:#ede2cf;box-shadow:8px 8px 0 #070808;border-radius:3px;padding:26px;transform:rotate(1deg)}.portfolio .te-budget-paper>span,.portfolio .te-budget-paper p,.portfolio .te-budget-paper strong,.portfolio .te-budget-paper div,.portfolio .te-budget-paper div>span{color:#27241f}.portfolio .te-budget-paper .eyebrow{font-size:10px;color:#654323}.portfolio .te-budget-total{font-family:monospace;display:block;font-size:clamp(28px,3.5vw,47px);line-height:1.2;letter-spacing:-2px;margin:22px 0 8px;overflow-wrap:anywhere}.portfolio .te-budget-paper>span:nth-of-type(2){font-size:12px}.portfolio .te-budget-paper hr{border:0;border-top:1px solid #a0947e;margin:25px 0}.portfolio .te-budget-paper>div{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin-bottom:13px}.portfolio .te-budget-paper>p{font-size:12px!important}.portfolio .te-budget-paper .te-budget-stack{display:block}.portfolio .te-budget-stack>div{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-top:1px solid #b8ad99;font-size:11px}.portfolio .te-budget-paper [role=status]{min-height:45px}.portfolio .te-budget-paper.is-incomplete{transform:none}
.portfolio .te-signal{border:1px solid #665948;padding:25px}.portfolio .te-key-mark{font-size:60px;color:#ffad75}.portfolio .te-query{background:#101212;border:1px solid #615c52;padding:18px;color:#ffc393;overflow-x:auto;max-width:100%;font-size:13px}.portfolio .te-figure code{color:#f5b780;background:transparent}.portfolio .te-json-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:18px;align-items:start}.portfolio .te-json-grid label .eyebrow{font-size:9px;display:block;margin-bottom:10px}.portfolio .te-json textarea{font-family:monospace;line-height:1.7;resize:vertical;width:100%;font-size:12px;tab-size:2;min-height:260px}.portfolio .te-json-output{background:#212321;border:1px solid #565348;padding:20px}.portfolio .te-json-output .eyebrow{font-size:9px}.portfolio .te-json-output [data-json-results]{display:grid;gap:7px;margin-top:14px}.portfolio .te-json-output [data-json-results] button{text-align:left;overflow-wrap:anywhere;word-break:break-word;font-family:monospace;font-size:11px}.portfolio .te-json-output [data-json-status]{font-size:12px}.portfolio .te-path-note{border-top:1px solid #69604e;padding-top:15px}.portfolio .te-path-note code{display:block;font-size:11px;overflow-wrap:anywhere;margin:10px 0}.portfolio .te-path-note pre{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere;color:#e7d4b7;max-width:100%}.portfolio .te-register{display:grid;grid-template-columns:1fr 1fr;gap:14px}.portfolio .te-register-card{padding:23px;border:1px solid #5f594e;background:#242724}.portfolio .te-register-card .eyebrow{font-size:9px}.portfolio .te-register-card p{font-size:13px}.portfolio .te-register-card details{border-top:1px solid #716652;padding-top:12px}.portfolio .te-register-card summary{font-size:12px;cursor:pointer;color:#f0e1c5}.portfolio .te-register-card[hidden]{display:none!important}.portfolio .te-container-grid{display:grid;grid-template-columns:1fr 35px 1fr;gap:10px;align-items:stretch;margin:24px 0}.portfolio .te-build-box,.portfolio .te-runtime-box{border:1px solid #6c6456;padding:24px;background:#242725;min-height:200px}.portfolio .te-build-box>strong{font-size:25px;line-height:1.2;display:block;margin:18px 0;overflow-wrap:anywhere}.portfolio .te-build-box small{font-size:12px}.portfolio .te-build-lines{display:grid;gap:8px;margin:22px 0}.portfolio .te-build-lines i{display:block;height:5px;background:#b099784d}.portfolio .te-build-lines i:nth-child(2){width:70%}.portfolio .te-build-lines i:nth-child(3){width:45%}.portfolio .te-cross-arrow{align-self:center;text-align:center;font-size:26px;color:#ffb17e!important}.portfolio .te-runtime-box>div{display:grid;gap:8px;margin-top:20px}.portfolio .te-runtime-box>div>span{padding:10px 12px;background:#362d24;border:1px solid #b38359;color:#ffe2c2;font-size:12px}.portfolio .te-check{display:flex;align-items:center;gap:12px;font-size:13px}.portfolio .te-check input{width:18px;height:18px;min-height:18px;accent-color:#ffa86e}
/* Hades hero: layered viewing boards, controls outside the artwork. */
.portfolio .te-hades-hero{height:auto;min-height:485px;position:relative;padding-bottom:20px;background:radial-gradient(ellipse at 60% 40%,#d7781626,transparent 66%)}.portfolio .te-hades-art{height:365px;position:relative;perspective:1100px}.portfolio .te-hero-back,.portfolio .te-hero-front{position:absolute;border-radius:7px;border:1px solid #76614c;box-shadow:0 27px 55px #0007;transition:transform .7s ease}.portfolio .te-hero-back{left:3%;top:16px;width:80%;height:250px;padding:22px;background:#242726;transform:rotate(-9deg) rotateY(-6deg);}.portfolio .te-hero-back>small{font-size:10px;color:#d4b998}.portfolio .te-hero-tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px;height:160px;margin-top:18px}.portfolio .te-hero-tiles i{display:grid;place-items:center;font-family:monospace;font-style:normal;font-size:28px;color:#b69e7e;border:1px solid #645846;background:linear-gradient(150deg,#394141,#1c1f20)}.portfolio .te-hero-front{right:0;bottom:0;width:65%;min-height:190px;background:#eddfc8;padding:28px;transform:rotate(5deg)}.portfolio .te-hero-front>small{font-size:9px;color:#684624;letter-spacing:1px}.portfolio .te-hero-front>strong{display:block;font-size:35px;line-height:1.08;letter-spacing:-1.5px;color:#2b2923;margin:14px 0}.portfolio .te-hero-front>p{font-size:11px;color:#524332;margin:0}.portfolio .te-hades-hero .depth-control{position:relative;bottom:auto;left:auto;right:auto;top:auto;z-index:5;display:flex;margin:30px auto 15px}.portfolio .te-hades-hero>figcaption{position:static;bottom:auto;left:auto;right:auto;font-size:11px;line-height:1.65;max-width:90%;margin:0 auto;color:#c5bcab}.portfolio .te-hades-hero.depth-open .te-hero-back{transform:rotate(-13deg) translate(-5px,-5px)}.portfolio .te-hades-hero.depth-open .te-hero-front{transform:rotate(0deg) translate(0,4px)}
.portfolio .te-article .article-hero-art{filter:none}.portfolio .te-article .editorial-plate:nth-child(2){background:#353936}.portfolio .te-article .editorial-plate:nth-child(2) .plate-title,.portfolio .te-article .editorial-plate:nth-child(2) small,.portfolio .te-article .editorial-plate:nth-child(2) .eyebrow{color:#eee6d7}.portfolio .te-article .editorial-plate:nth-child(3){background:#efbd89}.portfolio .te-feature{padding:35px;min-height:225px;background:linear-gradient(135deg,#353d3c,#202422);display:flex;flex-direction:column;justify-content:space-between}.portfolio .te-feature strong{font-size:40px;line-height:1.08;letter-spacing:-1.5px}.portfolio .te-feature span{font-size:10px;letter-spacing:1px;color:#f3b780}
@media(max-width:850px){.portfolio .te-figure{padding:24px}.portfolio .te-input-grid{grid-template-columns:1fr 1fr}.portfolio .te-input-grid label:first-child{grid-column:1/-1}.portfolio .te-question{grid-template-columns:26px 1fr}.portfolio .te-question label{grid-column:2}.portfolio .te-budget{gap:20px}.portfolio .te-hades-hero{min-height:450px}.portfolio .te-hades-art{height:340px}}
@media(max-width:580px){.portfolio .te-figure{padding:18px;margin:25px 0}.portfolio .te-figure .figure-head :is(h3:not(:where([data-portfolio-heading-source])),:where([data-portfolio-heading-source="h3"])){font-size:25px}.portfolio .te-figure p{font-size:14px}.portfolio .te-toolbar{gap:6px}.portfolio .te-toolbar button{flex:1 1 auto;font-size:11px;padding:10px}.portfolio .te-two,.portfolio .te-cache-lanes,.portfolio .te-budget,.portfolio .te-json-grid,.portfolio .te-register{grid-template-columns:1fr}.portfolio .te-read-row{display:block}.portfolio .te-read-row strong{display:block;margin-top:10px}.portfolio .te-number{font-size:39px}.portfolio .te-lane{padding:18px}.portfolio .te-input-grid{gap:12px}.portfolio .te-input-grid select{font-size:12px;padding:9px}.portfolio .te-path-steps span{padding:10px 7px;font-size:9px;overflow-wrap:anywhere}.portfolio .te-note{padding:21px}.portfolio .te-budget-paper{transform:none;box-shadow:4px 4px 0 #070808}.portfolio .te-budget-total{font-size:39px}.portfolio .te-stream-top{display:block;padding:8px}.portfolio .te-stream-top small{display:block;margin-top:5px}.portfolio .te-stream-scene{height:90px}.portfolio .te-stream-tile>p{font-size:10px!important;padding:0 8px}.portfolio .te-theater{padding:8px;gap:7px}.portfolio .te-stream-tile>p small{font-size:9px}.portfolio .te-container-grid{grid-template-columns:1fr}.portfolio .te-cross-arrow{transform:rotate(90deg);padding:5px}.portfolio .te-build-box,.portfolio .te-runtime-box{min-height:0}.portfolio .te-hades-hero{min-height:410px;padding-bottom:15px}.portfolio .te-hades-art{height:305px}.portfolio .te-hero-back{height:220px;padding:16px}.portfolio .te-hero-tiles{height:143px}.portfolio .te-hero-front{width:68%;min-height:150px;padding:18px;right:1%}.portfolio .te-hero-front>strong{font-size:27px}.portfolio .te-hero-front>small{font-size:8px}.portfolio .te-hades-hero .depth-control{margin-top:38px}.portfolio .te-hades-hero.depth-open .te-hero-back{transform:rotate(-8deg) translate(0,-3px)}.portfolio .te-hades-hero.depth-open .te-hero-front{transform:rotate(1deg) translate(0,0)}.portfolio .te-json-output{padding:15px}.portfolio .te-question{gap:9px}.portfolio .te-question :is(h4:not(:where([data-portfolio-heading-source])),:where([data-portfolio-heading-source="h4"])){font-size:16px}}
@media(prefers-reduced-motion:reduce){.portfolio .te-figure *, .portfolio .te-hades-hero *{animation:none!important;transition:none!important}}.portfolio .motion-off .te-figure *,.portfolio .motion-off .te-hades-hero *{animation:none!important;transition:none!important}.portfolio.no-js .te-figure textarea{display:none}.portfolio.no-js .te-budget{grid-template-columns:1fr}.portfolio.no-js .te-stream-tile{display:block!important}.portfolio.no-js .te-transcript{display:block}
/* New explanatory code blocks must scroll locally, like preserved source frames. */
.portfolio .te-article .prose>pre{max-width:100%;overflow-x:auto;background:#1b1d1c;border:1px solid #71624e;border-radius:5px;padding:18px;color:#f2dcc0;font-size:13px;line-height:1.8;tab-size:2}.portfolio .te-article .prose>pre code{color:inherit;background:none;white-space:pre;padding:0;font-size:inherit}

/* Warm foreground paper needs dark ink independently of the reader theme. */
.portfolio .te-article .editorial-plate:nth-child(3),.portfolio .te-article .editorial-plate:nth-child(3) .plate-title,.portfolio .te-article .editorial-plate:nth-child(3) small,.portfolio .te-article .editorial-plate:nth-child(3) .eyebrow{color:#402b1d}
