/* Warlock Engineering / VAWT Notebook shared page presentation.
   This stylesheet adds editorial components; all golden-ratio geometry,
   theme switcher, menus, header and footer remain owned by 2025 files. */
.nb-page{--nb-rule:color-mix(in srgb,var(--text-color) 23%,transparent);--nb-surface:color-mix(in srgb,var(--page-background-color) 91%,var(--text-color) 9%);--nb-wash:color-mix(in srgb,var(--page-background-color) 94%,var(--text-color) 6%);--nb-ink:var(--text-color);line-height:1.56;text-align:left}
.nb-page,.nb-page *{box-sizing:border-box}
.nb-page .golden1a{display:flow-root;min-height:0}
.nb-page .golden1b{margin-bottom:1rem}
.nb-page h1,.nb-page h2,.nb-page h3,.nb-page p{margin-top:0}
.nb-page .nb-eyebrow,.nb-page .nb-small-cap,.nb-page .nb-number{font:700 .72rem/1.35 'Segoe UI',Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.nb-page .nb-eyebrow{padding-bottom:.95rem;border-bottom:1px solid var(--nb-rule)}
.nb-page .nb-lead-col{width:61.7886%;padding:clamp(16px,3vw,54px) clamp(18px,2.6vw,48px) 24px;min-height:clamp(430px,50vw,800px)}
.nb-page h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2rem,4.7vw,5.15rem);font-weight:500;line-height:1.08;letter-spacing:-.042em;margin:.7em 0 .3em}
.nb-page .nb-deck{font-size:clamp(1rem,1.45vw,1.4rem);line-height:1.56;max-width:38ch}
.nb-page .nb-lead-rule{border-top:1px solid var(--nb-rule);margin:1.5rem 0 1rem}
.nb-page .nb-intro-steps{display:flex;gap:1rem;flex-wrap:wrap;margin:1.3rem 0}
.nb-page .nb-fact{min-width:100px;flex:1;display:flex;flex-direction:column;border-right:1px solid var(--nb-rule);padding-right:10px}
.nb-page .nb-fact:last-child{border-right:0}
.nb-page .nb-fact b{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.75rem,2.8vw,3.25rem);font-weight:400;line-height:1.15}
.nb-page .nb-fact span{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}
.nb-page .nb-primary-link,.nb-page .nb-select-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid var(--nb-ink);border-radius:5px;padding:.73rem 1rem;color:var(--nb-ink);font:700 .9rem/1.3 'Segoe UI',Arial,sans-serif;text-decoration:none;background:var(--nb-wash);cursor:pointer}
.nb-page .nb-primary-link:hover,.nb-page .nb-select-btn:hover{background:var(--nb-surface)}
.nb-page .nb-golden-tile{height:100%;min-height:0;border:1px solid var(--nb-rule);border-radius:clamp(4px,.9vw,13px);padding:clamp(6px,.85vw,15px);background-image:var(--linear-gradient-a);text-align:center;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:.25rem}
.nb-page .nb-mini-index strong{font-family:Georgia,serif;font-size:clamp(.6rem,1.35vw,1.45rem);line-height:1.05}
.nb-page .nb-mini-index span:last-child{font-size:clamp(.54rem,.78vw,.95rem)}
.nb-page .nb-brand-tile{background-image:var(--linear-gradient-ar);padding:.35rem}
.nb-page .nb-brand-tile img{width:80%;max-height:55%;object-fit:contain}
.nb-page .nb-brand-tile span{font-size:clamp(.5rem,.8vw,.86rem)}
.nb-page .nb-diagram-tile{padding:.4rem;background-image:var(--linear-gradient-ar)}
.nb-page .nb-diagram-tile svg{display:block;max-width:100%;max-height:75%;margin:auto;flex:1}
.nb-page .nb-side-caption{font-size:clamp(.56rem,.82vw,.96rem);line-height:1.25}
.nb-page .nb-method-tile{padding:clamp(6px,1.2vw,20px);background-image:var(--linear-gradient-a)}
.nb-page .nb-method-tile strong{font:500 clamp(1rem,1.65vw,1.8rem)/1.15 Georgia,serif}
.nb-page .nb-method-tile p{font-size:clamp(.75rem,1.1vw,1.1rem);line-height:1.35;margin:.45rem 0 0}
.nb-page .nb-section{padding:clamp(20px,3vw,54px);margin-top:12px}
.nb-page .nb-section-head{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;border-bottom:1px solid var(--nb-rule);margin-bottom:1.5rem;padding-bottom:1.1rem}
.nb-page .nb-section-head h2{font:500 clamp(1.65rem,3.3vw,3.65rem)/1.08 Georgia,serif;margin:.35rem 0 0;letter-spacing:-.035em}
.nb-page .nb-section-head p{max-width:39ch;margin:0;font-size:.94rem}
.nb-page .nb-study-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.nb-page .nb-study-card{border:1px solid var(--nb-rule);border-radius:9px;padding:clamp(16px,2vw,28px);background:var(--nb-wash);min-width:0;position:relative;transition:background .15s}
.nb-page .nb-study-card[data-selected="true"]{outline:2px solid var(--nb-ink);outline-offset:1px;background:var(--nb-surface)}
.nb-page .nb-study-card h3{font:500 clamp(1.25rem,2vw,2.05rem)/1.1 Georgia,serif;margin:.8rem 0}
.nb-page .nb-study-card p{font-size:.94rem;line-height:1.53}
.nb-page .nb-study-card .nb-spec{font-size:.86rem;border-top:1px solid var(--nb-rule);padding-top:.7rem;margin:.9rem 0}
.nb-page .nb-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;margin-top:1rem}
.nb-page .nb-card-actions a{font-size:.87rem}
.nb-page .nb-selected-chip{display:none;align-items:center;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.nb-page .nb-study-card[data-selected="true"] .nb-selected-chip{display:inline-flex}
.nb-page .nb-stored{border-left:4px solid var(--nb-ink);padding:.9rem 1rem;background:var(--nb-wash);margin:1.2rem 0 0}
.nb-page .nb-stored strong{display:block;font-size:1rem}
.nb-page .nb-stored span{font-size:.86rem}
.nb-page .nb-compare-note{font-size:.88rem;margin:1.2rem 0 0}
.nb-page .nb-energy{display:flex;gap:.6rem;align-items:stretch;flex-wrap:wrap;margin:1rem 0}
.nb-page .nb-energy b{font-size:.92rem;font-weight:650}
.nb-page .nb-energy span{font-size:.78rem}
.nb-page .nb-energy div{border:1px solid var(--nb-rule);border-radius:7px;padding:.8rem;flex:1;min-width:120px;display:flex;flex-direction:column;gap:.2rem}
.nb-page .nb-energy .nb-arrow{flex:0;min-width:auto;border:0;display:flex;align-items:center;padding:0 .3rem;font-size:1.3rem}
.nb-page .nb-workflow{list-style:none;counter-reset:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem}
.nb-page .nb-workflow li{display:grid;grid-template-columns:3rem 1fr;gap:.8rem;border-bottom:1px solid var(--nb-rule);padding:1.2rem 0}
.nb-page .nb-workflow .nb-number{font-size:1.05rem;font-family:Georgia,serif;letter-spacing:0}
.nb-page .nb-workflow h3{font:600 1.2rem/1.2 'Segoe UI',Arial,sans-serif;margin:0 0 .35rem}
.nb-page .nb-workflow p{font-size:.88rem;margin:0}
.nb-page .nb-status{display:block;margin-top:.6rem;font-size:.7rem;letter-spacing:.08em;font-weight:700;text-transform:uppercase;opacity:.77}
.nb-page .nb-muted-note{border-top:1px solid var(--nb-rule);margin:1.2rem 0 0;padding-top:.9rem;font-size:.87rem}
.nb-page .nb-policy-link{font-size:.88rem}
.nb-page a:focus-visible,.nb-page button:focus-visible{outline:3px solid currentColor;outline-offset:3px}
@media(max-width:900px){.nb-page .nb-section-head{display:block}.nb-page .nb-section-head p{margin-top:.8rem}.nb-page .nb-energy{gap:.4rem}}
@media(max-width:600px){.nb-page .nb-lead-col{width:100%;min-height:0;padding:0}.nb-page #viewonmobile{padding:1.15rem}.nb-page .nb-section{padding:1.15rem}.nb-page .nb-study-grid,.nb-page .nb-workflow{grid-template-columns:1fr}.nb-page .nb-golden-tile{min-height:0}.nb-page .nb-mini-index strong{font-size:3.4vw}.nb-page .nb-mini-index span:last-child{font-size:2vw}.nb-page .nb-brand-tile span{font-size:2vw}.nb-page .nb-side-caption{font-size:2.5vw}.nb-page .nb-method-tile strong{font-size:4vw}.nb-page .nb-method-tile p{font-size:3vw}.nb-page .nb-intro-steps{margin:.9rem 0}.nb-page .nb-fact b{font-size:1.8rem}.nb-page .nb-energy{display:grid;grid-template-columns:1fr}.nb-page .nb-energy .nb-arrow{justify-content:center;transform:rotate(90deg)}.nb-page .nb-section-head{margin-bottom:.9rem}}

/* Brick 01 polish: keep the inherited golden geometry, but make the compact
   SVG labels and the global menu usable on a narrow screen. These menu rules
   affect this Notebook page only; core Warlock CSS/JS remains unchanged. */
@media (max-width: 600px) {
  .nb-notebook-site #menu { padding-inline: 7px; }
  .nb-notebook-site #menu > li { margin-right: 0; padding-inline: max(1px, .5vw); }
  .nb-notebook-site #menu > li > a { font-size: clamp(10px, 2.8vw, 12px); }
  .nb-notebook-site #menu li .drop { padding-right: 16px; }
  .nb-notebook-site .nb-diagram-tile svg text[font-size="8"] { font-size: 10.5px; }
  .nb-notebook-site .nb-diagram-tile svg text[font-size="13"] { font-size: 14px; }
  .nb-notebook-site .nb-side-caption { font-size: clamp(12px, 3.2vw, 14px); line-height: 1.35; }
  .nb-notebook-site .nb-diagram-tile { padding: 8px; }
  .nb-notebook-site .nb-diagram-tile svg { max-height: 70%; }
}
@media (max-width: 360px) {
  .nb-notebook-site #menu { padding-inline: 4px; }
  .nb-notebook-site #menu > li { padding-inline: 1px; }
  .nb-notebook-site #menu > li > a { font-size: 10px; }
  .nb-notebook-site #menu li .drop { padding-right: 13px; }
}
/* Below narrow-phone width, retain a golden 38.2/61.8 heading pair but give
   the torque-flow diagram its own readable full-width row. Desktop geometry
   and the main Warlock framework remain completely unchanged. */
@media (max-width: 480px) {
  .nb-page .golden2 { float: none; width: 100%; aspect-ratio: auto; display: grid; grid-template-columns: 38.2114% 61.7886%; }
  .nb-page .golden2a, .nb-page .golden2b { float: none; width: 100%; aspect-ratio: auto; min-height: 116px; padding: 5px; }
  .nb-page .golden3 { float: none; width: 100%; aspect-ratio: auto; min-height: 268px; padding: 5px; }
  .nb-page .golden4 { float: none; width: 100%; }
  .nb-page .nb-mini-index strong { font-size: clamp(1rem, 4.5vw, 1.3rem); }
  .nb-page .nb-mini-index span:last-child, .nb-page .nb-brand-tile span { font-size: clamp(11px, 2.9vw, 13px); }
  .nb-page .nb-brand-tile img { width: 76%; max-height: 70px; }
  .nb-page .nb-diagram-tile { min-height: 264px; padding: 9px; }
  .nb-page .nb-diagram-tile svg { width: min(100%, 280px); height: 185px; max-height: 185px; flex: none; }
  .nb-page .nb-side-caption { font-size: 13px; line-height: 1.35; }
}

/* Brick 02: link to live rotor Step 01 */
.nb-page .nb-steps-link{display:inline-block;margin-top:.55rem;font-weight:700;font-size:.84rem;text-decoration:underline;text-underline-offset:3px}


/* Brick 31 — Overview only: visible forward action after saving a rotor.
   The shared theme variables keep it legible in light, dark and green modes. */
.nb-page .nb-next-action{margin:1rem 0 0}
.nb-page a.nb-next-step{
  display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;
  width:min(100%,29rem);min-height:4.25rem;padding:.85rem 1.05rem;
  border:2px solid var(--nb-ink);border-radius:9px;
  background:var(--nb-ink);color:var(--page-background-color);
  text-decoration:none;box-shadow:0 3px 0 var(--nb-rule);
  text-align:left;transition:transform .15s ease,box-shadow .15s ease;
}
.nb-page a.nb-next-step:link,.nb-page a.nb-next-step:visited{color:var(--page-background-color)}
.nb-page a.nb-next-step:hover{background:var(--nb-ink);transform:translateY(-2px);box-shadow:0 5px 0 var(--nb-rule)}
.nb-page a.nb-next-step:active{transform:translateY(0);box-shadow:0 2px 0 var(--nb-rule)}
.nb-page a.nb-next-step:focus-visible{outline:3px solid var(--nb-ink);outline-offset:4px}
.nb-page .nb-next-step-copy{display:flex;flex-direction:column;gap:.18rem;min-width:0}
.nb-page .nb-next-step-label{font-size:.72rem;letter-spacing:.11em;text-transform:uppercase;font-weight:700}
.nb-page .nb-next-step-copy strong{font-size:1rem;line-height:1.3;font-weight:700}
.nb-page .nb-next-step-arrow{display:inline-flex;align-items:center;justify-content:center;flex:none;
  width:2.1rem;height:2.1rem;border:1.5px solid currentColor;border-radius:50%;font-size:1.35rem;line-height:1}
@media(prefers-reduced-motion:reduce){.nb-page a.nb-next-step{transition:none}}
