/* Approved Oura-based structure, refined neutral palette and interaction details. */
.template-b{
  --cream:#f1f3f0;
  --ink:#2e4148;
  --paper:#f8faf7;
  --soft:#e3e9e5;
  --muted:#647378;
  --blue:#285f80;
  --blue-hover:#1d4a64;
  --hero-bg:#e9eeeb;
  --rule:#c3ceca;
  color:var(--ink);
  background:var(--cream);
}
.template-b ::selection{color:#193444;background:#c9dce2}
.b-notice{background:#d9e2dc;color:#41554f}
.b-hero{background:var(--hero-bg)}
.b-hero .image-note{color:#435a5c;opacity:.92}
.b-header .brand{letter-spacing:-1.15px}
.b-header .brand span{color:var(--muted);letter-spacing:.08em}
.b-header>nav>a{position:relative;padding:10px 0}
.b-header>nav>a::after{position:absolute;content:"";left:0;right:0;bottom:2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}
.b-header>nav>a:hover::after,.b-header>nav>a:focus-visible::after{transform:scaleX(1)}
.template-b .action{background:var(--blue);color:#fff;transition:background .2s,box-shadow .2s,transform .2s}
.template-b .action:hover{background:var(--blue-hover);box-shadow:0 3px 12px #203b4718}
.template-b .action:active{transform:translateY(0) scale(.98);box-shadow:none}
.template-b .b-header .action{background:#f5f8f3d6;color:var(--ink);border-color:#899b9d66}
.template-b .b-header .action:hover{background:var(--paper);border-color:#73898c}
.b-header .menu-toggle{background:#f5f8f3e6;border-color:#899b9d66}
.template-b .pill{background:var(--ink);color:var(--paper);transition:background .2s,box-shadow .2s}
.template-b .pill:hover{background:#1e343d;box-shadow:0 2px 9px #233c4314}
.template-b .pill:active{background:#172c34}
.template-b a:focus-visible,.template-b button:focus-visible,.template-b summary:focus-visible,.template-b [tabindex]:focus-visible{outline:2px solid #256e91;outline-offset:4px}
.template-b .circle{border-color:#aebdb9;color:var(--ink);transition:background .2s,border-color .2s,opacity .2s}
.template-b .circle:not(:disabled):hover{background:#dce5df;border-color:#7c9394}
.template-b .circle:disabled{opacity:.3;cursor:default;box-shadow:none;background:transparent}
.topic-card{border-radius:12px}
.topic-card .topic-label{background:#354b48ba;color:#f6f8f5;z-index:2;font-size:12px}
.topic-card .topic-open{background:var(--paper);color:var(--ink)}
.topic-card h3{letter-spacing:-.025em;text-wrap:pretty}
.topic-detail{background:#304542db;color:#f5f8f4;box-shadow:0 6px 22px #142d2714}
.topic-detail p{font-size:14px;line-height:1.8}
.template-b .topic-detail .action{background:var(--paper);color:var(--ink);font-size:12px;min-height:44px}
.template-b .topic-detail .action:hover{background:#e2eae4}
.carousel-bottom p{color:var(--muted);font-size:12px;display:flex;gap:18px;align-items:center}
.carousel-status{font-variant-numeric:tabular-nums;color:var(--ink);font-size:12px;letter-spacing:.07em;min-width:78px}
.record-0{background:#34444d}.record-1{background:#3f4f53}.record-2{background:#486572}.record-3{background:#354f58}.record-4{background:#3d514a}
.record-panel{box-shadow:0 0 0 1px #ffffff12,0 12px 34px #172e3621}
.record-panel[aria-pressed=true]{outline:1px solid #d7e5dc;outline-offset:-5px}
.record-panel:hover,.record-panel:focus-visible{box-shadow:0 0 0 1px #ffffff26,0 16px 32px #172e3630}
.record-top{font-size:12px;opacity:.9}.record-top span{font-size:11px}
.record-title{font-size:14px;opacity:.95}
.record-kind{font-size:12px;opacity:.88}
.record-values>div{font-size:12px;line-height:1.35;font-variant-numeric:tabular-nums}
.record-values b{font-size:14px}
.record-foot{font-size:11px;line-height:1.6;opacity:.85;letter-spacing:0}
.record-scale{height:1px;background:#e8f0ea45;display:block;margin:24px 0}
@media(min-width:761px){
  .record-panel:not(.record-2) .record-title{margin-top:24px}
  .record-panel:not(.record-2)>strong{font-size:64px}
  .record-panel:not(.record-2) .record-scale{margin:18px 0}
  .record-panel:not(.record-2) .record-values>div{padding:7px 0}
  .record-panel:not(.record-2) .record-foot{margin-top:12px}
  .record-panel.record-0 .record-title,.record-panel.record-4 .record-title{margin-top:10px}
}
.fan-caption{font-size:12px;color:var(--muted);line-height:1.8}
.b-records .reading-details{border-color:var(--rule)}
.b-records summary{font-size:15px;transition:color .2s}
.b-records summary:hover{color:var(--blue)}
.b-records .table-wrap{scrollbar-color:#b5c4be #e7ece6;scrollbar-width:thin}
.b-records caption{font-size:12px;opacity:1;color:var(--muted)}
.b-records th,.b-records td{font-size:14px;line-height:1.5;border-color:#c7d2cb}
.b-records tbody tr:hover{background:#e5ebe5}
.b-records .reading-details>p{font-size:13px;color:var(--muted)}
.b-confirmations article{background:var(--soft);border:1px solid #d8e0d9}
.b-confirmations .label{background:#425a56;color:#f5f8f3;font-size:12px}
.b-confirmations article>a{font-size:13px;min-height:36px;text-underline-offset:5px}
.b-confirmations article>a:hover{text-decoration:underline}
.b-confirmations article>a svg{transition:transform .2s}
.b-confirmations article>a:hover svg{transform:translateX(3px)}
.b-small-value>span{font-size:13px;line-height:1.7;color:var(--muted)}
.b-small-value strong,.mobile-readout strong{font-variant-numeric:lining-nums tabular-nums}
.b-small-value small{font-size:13px;color:var(--muted)}
.b-depth-control{position:absolute;bottom:52px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);padding:5px;background:var(--paper);border:1px solid #f9fdfbcc;border-radius:12px;box-shadow:0 4px 24px #10252e35}
.b-depth-control .b-depth-bar{position:static;transform:none;width:auto;max-width:100%;margin:0;gap:2px;padding:0;background:none;border-radius:8px;box-shadow:none;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#b6c3bd transparent;scroll-padding:4px}
.b-depth-control .b-depth-bar button{min-width:60px;flex:0 0 60px;height:44px;padding:8px 9px;font-size:12px;border-radius:8px;color:var(--ink);white-space:nowrap;transition:background .18s,color .18s}
.b-depth-control .b-depth-bar button:hover{background:#e1e8e1;color:var(--ink)}
.b-depth-control .b-depth-bar button[aria-pressed=true]{background:#354d52;color:#f7faf5;font-weight:500}
.b-depth-control .b-depth-bar button:focus-visible{outline-offset:-3px}
.b-macro .image-note{font-size:11px;opacity:.95;color:#e3e9e4;text-shadow:0 1px 4px #14242a}
.mobile-readout{display:none}
.b-journal{background:#202c30;color:#f2f5ef}
.journal-feature>.label,.journal-feature .pill{background:var(--paper);color:var(--ink)}
.journal-feature .pill:hover{background:#e0e7df}
.journal-feature::after{background:linear-gradient(transparent,#1d2b30ef)}
.journal-links>a,.journal-links>button{background:#eef2ec;color:var(--ink)}
.journal-links>a:hover,.journal-links>button:hover{background:#dce6de}
.journal-links h3{letter-spacing:-.025em;text-wrap:pretty}
.journal-links .circle{background:#3f575b;color:#f2f6ed}
.journal-links svg{transition:transform .2s}
.journal-links>a:hover svg,.journal-links>button:hover svg{transform:translateX(2px)}
.journal-note{font-size:12px;color:#b6c7c8;border-color:#a3b9b226;line-height:1.8}
.b-footer{background:linear-gradient(120deg,#314248,#202c30);color:#c3cfca}
.b-footer>.brand{color:#c0cec8}
.b-footer .action{background:transparent;color:#e0e8df;border:1px solid #a3b7ae66;font-size:13px}
.b-footer .action:hover{background:#455b60;color:#fff;border-color:#c7d5cd}
.b-footer .email{color:#c3d0c9;font-size:13px}
.b-footer .footer-bottom{border-color:#a9bdb326}
.template-b dialog{background:var(--cream);color:var(--ink)}
.template-b dialog::backdrop{background:#132e3b85}
.template-b .close-dialog{background:var(--paper);color:var(--ink);box-shadow:0 0 0 1px #bac7bf55}
.template-b .quote-body input,.template-b .quote-body textarea{background:var(--paper);border-color:#aabbb2;color:var(--ink);transition:border-color .2s,box-shadow .2s}
.template-b .quote-body input:focus,.template-b .quote-body textarea:focus{border-color:#4d7a88;box-shadow:0 0 0 3px #8ab0b522;outline:none}
.template-b .quote-body label{grid-template-columns:1fr auto;gap:8px;font-size:14px}
.template-b .quote-body label>span{opacity:1;color:var(--muted);font-size:12px}
.template-b .quote-body label>input,.template-b .quote-body label>textarea{grid-column:1/-1}
.template-b #form-feedback{color:#36574c}
.template-b .review-switch{background:#f4f7f2eb;color:#384e50;border-color:#b9c8c080}
.template-b .review-switch span{color:#647872}
.template-b .review-switch a[aria-current]{background:#354d52;color:#f8faf4}
.template-b .review-switch a:hover{background:#dce7dc;color:#223f48}
@media(min-width:761px) and (max-width:1100px){
  .topic-card.is-expanded>h3{right:320px;font-size:28px}
  .topic-detail{width:270px;padding:22px}
  .topic-detail h4{font-size:22px}
}
@media(max-width:760px){
  .b-header #mobile-menu{background:var(--cream);border-bottom:1px solid var(--rule);box-shadow:0 20px 28px #253d4710}
  .b-header #mobile-menu a{min-height:44px;display:flex;align-items:center}
  .b-header .action{min-height:44px;font-size:12px}
  .b-hero::after{background:linear-gradient(transparent,var(--hero-bg))}
  .b-hero .image-note{font-size:10px;opacity:.9}
  .b-center p{line-height:1.75}
  .topic-card .topic-label{font-size:11px;max-width:calc(100% - 86px);white-space:nowrap}
  .topic-card .topic-open,.carousel-bottom .circle{width:44px;height:44px}
  .topic-card.is-expanded{height:auto;min-height:620px;display:flex;flex-direction:column;justify-content:flex-end;padding:235px 20px 20px;gap:22px}
  .topic-card.is-expanded>img{position:absolute;inset:0;height:100%;width:100%}
  .topic-card.is-expanded>h3{position:relative;inset:auto;font-size:26px;line-height:1.35;margin:0;z-index:2}
  .topic-card.is-expanded>.topic-detail{position:relative;inset:auto;width:100%;margin:0;padding:20px;flex-shrink:0}
  .topic-detail p{font-size:13px;line-height:1.8}
  .carousel-bottom p{font-size:11px;gap:9px}
  .carousel-status{font-size:11px;min-width:70px;letter-spacing:.035em}
  .carousel-caption{max-width:110px;line-height:1.5}
  .record-panel{height:415px;padding:20px 14px}
  .record-1,.record-3{height:365px}
  .evidence-fan{height:445px;margin-top:45px}
  .record-top{font-size:11px}.record-top span{font-size:10px}
  .record-title{font-size:12px;margin-top:22px}
  .record-kind{font-size:11px;line-height:1.5}
  .record-scale{margin:18px 0}
  .record-values>div{font-size:11px;padding:7px 0}
  .record-values b{font-size:12px}
  .record-panel h3{font-size:12px;line-height:1.4}
  .record-foot{font-size:9px;line-height:1.6;margin-top:14px;overflow-wrap:anywhere}
  .record-panel:not(.record-2) .record-title{margin-top:12px}
  .record-panel:not(.record-2)>strong{font-size:50px}
  .record-panel:not(.record-2) .record-scale{margin:12px 0}
  .record-panel:not(.record-2) .record-values>div{padding:6px 0}
  .record-panel:not(.record-2) .record-foot{margin-top:8px}
  .fan-caption{font-size:11px;line-height:1.8}
  .b-records summary{font-size:14px}
  .b-records caption{font-size:11px}
  .b-confirmations article>a{font-size:13px}
  .b-small-value{display:none}
  .b-tech-copy>.pill{margin-top:25px}
  .b-tech-copy .eyebrow,.b-journal>.eyebrow{font-size:11px}
  .b-tech-copy{padding-bottom:32px}
  .b-macro{height:470px}
  .b-depth-control{width:calc(100% - 28px);max-width:calc(100% - 28px);bottom:42px;padding:5px;border-radius:12px}
  .mobile-readout{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 10px 15px;margin:0 2px 5px;border-bottom:1px solid #d4dfd5}
  .mobile-readout>div{display:grid;gap:7px}
  .mobile-readout [data-depth-label]{font-size:12px;line-height:1.4;color:var(--ink)}
  .mobile-readout [data-depth-readings]{font-size:10px;line-height:1.5;color:var(--muted);font-variant-numeric:tabular-nums}
  .mobile-readout>strong{font:400 38px/1 PreviewSerif,Georgia,serif;letter-spacing:-1px;white-space:nowrap}
  .mobile-readout small{font:10px/1 Arial,sans-serif;margin-left:5px;letter-spacing:0;color:var(--muted)}
  .b-depth-control .b-depth-bar button{height:44px;min-width:56px;flex-basis:56px;font-size:12px;padding:8px 7px}
  .b-macro .image-note{font-size:10px;bottom:15px;right:17px}
  .journal-feature>.label{font-size:11px}
  .journal-note{font-size:11px;line-height:1.9}
  .b-footer .footer-bottom{font-size:11px;line-height:1.7}
  .template-b .quote-body{padding-top:58px}
}
@media(prefers-reduced-motion:reduce){.b-header>nav>a::after,.journal-links svg,.b-confirmations article>a svg{transition:none}}

/* Tighten measured empty intervals while keeping the approved section order. */
.b-topics{padding-top:88px;padding-bottom:48px}
.topic-carousel{margin-top:64px}
.b-evidence{padding-top:48px}
.evidence-fan{height:600px;margin-top:48px}
.b-records{margin-top:32px}
.b-confirmations{padding-top:72px;padding-bottom:80px}
.b-confirmations article{min-height:310px;padding:30px 32px 26px}
.b-confirmations article>p{margin:26px 0 22px}
.b-technology{min-height:0;padding-bottom:72px}
.b-tech-copy{padding-top:48px}
.b-tech-copy h2{margin-top:26px}
.b-small-value{margin-top:28px}
.b-macro{height:600px}
.b-journal{padding-top:48px;padding-bottom:48px}
.b-journal>.eyebrow{margin-bottom:28px}
.journal-feature{min-height:580px}
.journal-links{gap:18px}
.journal-links>a,.journal-links>button{padding:24px 28px}
.journal-note{margin-top:36px;padding-top:22px}
.b-footer{padding-top:60px}
.b-footer>.brand{margin-bottom:40px}
.b-footer .footer-bottom{margin-top:60px}
@media(min-width:761px) and (max-width:1100px){
  .b-topics{padding-top:72px}
  .b-confirmations{padding-top:64px;padding-bottom:64px}
  .b-confirmations article{padding:28px 24px 24px}
  .b-tech-copy{padding-top:40px}
  .b-macro{height:570px}
  .journal-feature{min-height:560px}
  .journal-links>a,.journal-links>button{padding:24px}
}
@media(max-width:760px){
  .b-topics{padding-top:56px;padding-bottom:32px}
  .topic-carousel{margin-top:36px}
  .b-evidence{padding-top:36px}
  .evidence-fan{height:445px;margin-top:26px}
  .b-records{margin-top:24px}
  .b-confirmations{padding-top:44px;padding-bottom:48px}
  .b-confirmations article{min-height:300px;padding:26px 24px 24px}
  .b-confirmations article>p{font-size:21px;line-height:1.6;margin:24px 0;letter-spacing:-.025em;text-wrap:pretty}
  .b-confirmations article>p br{display:none}
  .b-confirmations article>p br:first-of-type{display:initial}
  .b-technology{padding-bottom:48px}
  .b-tech-copy{padding-top:0;padding-bottom:28px}
  .b-tech-copy h2{margin-top:20px}
  .b-macro{height:450px}
  .b-journal{padding-top:32px;padding-bottom:32px}
  .b-journal>.eyebrow{margin-bottom:22px}
  .journal-feature{min-height:420px}
  .journal-links{gap:14px}
  .journal-links>a,.journal-links>button{min-height:160px;padding:22px 24px}
  .journal-note{margin-top:28px;padding-top:20px}
  .b-footer{padding-top:52px}
  .b-footer>.brand{margin-bottom:28px}
  .b-footer .footer-bottom{margin-top:36px}
}
