/* Restore the established blue/teal palette; slow, broad shifts only. */
body{background:linear-gradient(135deg,#2c4b54 0%,#142b38 42%,#18383c 100%);background-size:160% 160%;background-attachment:fixed;animation:ambient-tide 32s ease-in-out infinite alternate}
@keyframes ambient-tide{from{background-position:15% 25%}to{background-position:75% 70%}}
#process{overflow:hidden}
#work,#process,.writing{background-size:150% 150%;animation:ambient-tide 38s ease-in-out infinite alternate}
.motion-paused #work,.motion-paused #process,.motion-paused .writing{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){#work,#process,.writing{animation:none}}
.glass-nav{background:linear-gradient(130deg,rgba(17,38,48,.86),rgba(25,51,61,.76));border:1px solid #d5eee744;color:#f5faf7;backdrop-filter:blur(24px) saturate(130%);-webkit-backdrop-filter:blur(24px) saturate(130%);box-shadow:inset 0 1px #f2fff82e,0 10px 30px #08191d33}
.glass-nav a,.glass-nav a:visited{color:#f5faf7;font-size:14px;font-weight:500;text-shadow:0 1px 2px #00141a55}
.glass-nav a:hover,.glass-nav a:focus-visible{color:#fff;background:#dceee916}
.glass-nav a.active,.glass-nav a.active:hover,.glass-nav a.active:visited{color:#18333c;background:#e3efea;box-shadow:inset 0 1px #fff9,0 2px 6px #00182022;text-shadow:none}
.glass-nav a:focus-visible{outline:2px solid #c7e8df;outline-offset:2px}
.console-bottom{justify-content:flex-end}#player-message:empty{display:none}
.status-lamp{width:10px;height:10px;flex:0 0 10px;border:1px solid #5a6e70;background:radial-gradient(circle at 33% 28%,#e8f5f0 0%,#8aafa9 20%,#4a686b 60%,#263d43 100%);box-shadow:0 0 0 3px #52636933,0 1px 1px 3px #ffffff70,inset 0 -1px 2px #142d3e66}
.is-playing .status-lamp{background:radial-gradient(circle at 32% 26%,#fff 0%,#edffd5 15%,#b6e38b 35%,#5e9253 75%);box-shadow:0 0 0 3px #435b583d,0 1px 1px 3px #fff8,0 0 10px 2px #b7e99477,inset 0 -1px 2px #345b42}
.motion-paused{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){body{animation:none}}
#work .gallery-stage .art-panel>span{right:auto;max-width:calc(100% - 28px);top:14px;left:14px;padding:10px 12px!important;gap:4px!important;border-radius:10px;background:linear-gradient(120deg,#f0f5eec9,#e1eeead1);border:1px solid #ffffffe6!important;box-shadow:inset 0 1px #fff9,0 5px 20px #14232b18;backdrop-filter:blur(18px) saturate(130%);-webkit-backdrop-filter:blur(18px) saturate(130%)}
#work .gallery-stage .art-panel strong{font-size:clamp(14px,1.25vw,19px)!important;color:#21363a!important;letter-spacing:-.025em}
#work .gallery-stage .art-panel small{font-size:8px!important;color:#445d60!important}
#work .gallery-stage .art-panel:hover>span{background:linear-gradient(120deg,#f6f9f0db,#dbece6cf);transform:translateY(2px)}
/* Only the nearest border receives light; the artwork stays untouched. */
#work .gallery-stage .art-panel:before{content:'';position:absolute;inset:0;z-index:3;border-radius:inherit;pointer-events:none;padding:2px;opacity:0;background:radial-gradient(ellipse 230px 230px at var(--spot-x,50%) var(--spot-y,40%),#effffb 0%,#9ce4d7 25%,#72bfc566 55%,transparent 75%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;transition:opacity .2s}
#work .gallery-stage .art-panel:hover:before,#work .gallery-stage .art-panel:focus-visible:before{opacity:1}
#process .spatial-pair{display:block;max-width:1700px;width:100%;padding:0;margin:0 auto;perspective:none}
.spatial-orbit{height:clamp(540px,51vw,730px);position:relative;perspective:1350px;transform-style:preserve-3d;touch-action:pan-y}
#process .spatial-scene:nth-child(n){position:absolute;left:50%;top:49%;width:min(46vw,650px);margin:0;grid-column:auto;transform:var(--pose)!important;transform-style:preserve-3d;transition:transform .95s cubic-bezier(.16,1,.3,1);will-change:transform}
#process .spatial-image{transform:none!important;overflow:visible}
#process .spatial-image img{width:100%;height:auto;max-height:410px;object-fit:contain;border-radius:2px;filter:brightness(.68) saturate(.78);box-shadow:0 24px 42px -24px #0009;transition:filter .7s}
#process .spatial-scene.is-front img{filter:brightness(1) saturate(1)}
#process .spatial-caption{grid-template-columns:auto 1fr auto;padding:15px 0;gap:12px;opacity:.4;transition:opacity .6s}
#process .spatial-scene.is-front .spatial-caption{opacity:1}
#process .spatial-caption h3{font-size:clamp(18px,2vw,27px)}#process .spatial-caption a{grid-column:auto;font-size:11px}
.spatial-select{position:relative;display:flex;justify-content:center;align-items:center;gap:clamp(5px,1.4vw,20px);padding:12px 20px 46px}
.spatial-select button{width:42px;height:42px;border:1px solid transparent;border-radius:50%;font:11px var(--mono);color:#b6c7c8;transition:background .2s,color .2s}
.spatial-select button[aria-pressed=true]{color:#1f383d;background:#d0e0d6;border-color:#f4faf2;box-shadow:0 0 25px #b8d5c317}
.spatial-select button:hover{border-color:#d5e4dc70}.spatial-select button:focus-visible{outline:2px solid #e8be9b;outline-offset:4px}
#process .spatial-image:focus-visible{outline:2px solid #e8be9b;outline-offset:8px}
@media(max-width:700px){.glass-nav{backdrop-filter:blur(22px) saturate(130%);-webkit-backdrop-filter:blur(22px) saturate(130%)}#work .gallery-stage .art-panel>span{left:8px;top:8px;max-width:calc(100% - 16px);padding:7px 9px!important}#work .gallery-stage .art-panel strong{font-size:13px!important}#work .gallery-stage .art-panel small{font-size:7px!important}.spatial-orbit{height:440px;perspective:1000px}#process .spatial-scene:nth-child(n){width:72vw;top:48%}#process .spatial-image img{max-height:300px}#process .spatial-caption{grid-template-columns:1fr auto;gap:7px}.spatial-number{display:none}#process .spatial-caption h3{font-size:17px}#process .spatial-caption a{font-size:9px}.spatial-select{gap:3px;padding-bottom:16px}.spatial-select button{width:36px;height:38px}}
.motion-paused #process .spatial-scene{transition:none}.motion-paused #work .art-panel:before{transition:none}
@media(prefers-reduced-motion:reduce){#process .spatial-scene:nth-child(n){transition:none}#work .art-panel:before{transition:none}}
/* An offset two-page reading surface, with article content always visible. */
#writing{padding:80px clamp(24px,7vw,110px) 100px}
#writing .article-shelf{display:grid;grid-template-columns:1.08fr 1fr;gap:clamp(24px,4vw,64px);align-items:start;margin-top:44px;perspective:1600px}
#writing .article-leaf{position:relative;display:flex;flex-direction:column;padding:0;gap:0;min-width:0;min-height:0;border:1px solid #e2f1ea5c;border-top:1px solid #e2f1ea5c;border-radius:7px 7px 32px 7px;background:#dce8e2;color:#203a42;box-shadow:0 4px 0 -1px #92a9a5,0 8px 0 -2px #47666a,0 25px 45px -22px #08161fc2;transform:rotate(-1.2deg);transition:transform .65s cubic-bezier(.16,1,.3,1),box-shadow .5s;overflow:hidden;isolation:isolate}
#writing .article-leaf:nth-child(2){margin-top:90px;transform:rotate(1.4deg);background:#d4e0e4;border-color:#e2eff180}
#writing .article-sheet{padding:clamp(24px,3.2vw,48px);display:flex;flex-direction:column;gap:24px;position:relative;z-index:1}
#writing .article-meta{display:flex;justify-content:space-between;gap:14px;font:12px/1.5 var(--mono);color:#49636b}
#writing .article-leaf h3{font:500 clamp(32px,3.7vw,56px)/1.08 var(--sans);letter-spacing:-.055em;margin:0;color:#18343e;text-wrap:balance}
#writing .article-leaf h3 em{font-family:var(--serif);font-weight:400;letter-spacing:-.025em;color:#3d626c}
#writing .article-excerpt{font:400 clamp(21px,2vw,27px)/1.4 var(--serif);letter-spacing:0;color:#26474f;max-width:36ch}
#writing .article-preview{font:400 16px/1.65 var(--sans);color:#36565e;max-width:48ch}
#writing .article-topics{display:flex;flex-wrap:wrap;gap:8px;font:12px/1.4 var(--mono);color:#365860}
#writing .article-topics span{padding:7px 10px;border:1px solid #476b6d40;border-radius:20px}
#writing .article-end{display:flex;align-items:center;justify-content:space-between;margin-top:4px;padding-top:20px;border-top:1px solid #36575b33;font:500 14px var(--sans);color:#23474f}
#writing .article-end svg{width:19px;height:19px;transition:transform .4s}
#writing .article-cover{display:block;width:100%;height:auto;max-height:360px;object-fit:contain;background:#152d38}
#writing .article-leaf:before{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(ellipse 400px 300px at var(--read-x,50%) var(--read-y,20%),#fff5,transparent 75%);opacity:0;transition:opacity .4s}
@media(hover:hover) and (pointer:fine){#writing .article-leaf:hover{transform:translateY(-10px) rotate(0);box-shadow:0 4px 0 -1px #92a9a5,0 8px 0 -2px #47666a,0 35px 50px -22px #08161fcc;color:#203a42}#writing .article-leaf:hover:before{opacity:.6}#writing .article-leaf:hover .article-end svg{transform:translate(2px,-2px)}}
#writing .article-leaf:focus-visible{outline:3px solid #c9e8dc;outline-offset:7px}
@media(max-width:700px){html{scroll-padding-top:150px}.glass-nav a{font-size:14px}#writing{padding-top:50px;padding-bottom:60px}#writing .article-shelf{grid-template-columns:1fr;gap:32px;margin-top:28px}#writing .article-leaf,#writing .article-leaf:nth-child(2){margin:0;transform:none}#writing .article-sheet{gap:21px;padding:26px}#writing .article-leaf h3{font-size:36px}#writing .article-meta{font-size:12px;flex-wrap:wrap}#writing .article-cover{max-height:310px}}
.motion-paused #writing .article-leaf,.motion-paused #writing .article-end svg{transition:none;transform:none}
@media(prefers-reduced-motion:reduce){#writing .article-leaf,#writing .article-leaf:nth-child(2),#writing .article-leaf:hover{transition:none;transform:none}#writing .article-end svg{transition:none}}
/* A single time display, real engagement counts, and a quietly animated surface. */
.native-player{padding:0!important;margin:0!important;border:0!important;overflow:hidden;min-height:0}
.native-player-inner{padding-top:24px;position:relative;display:flow-root}
#soundcloud-mount iframe{display:block;width:100%;border:0}
.player-source{display:flex;align-items:center;justify-content:center;width:32px;height:30px;margin:7px 0 0 auto;color:#465d65}
.player-source svg{width:16px;height:16px}#player-message{padding-right:34px;font-size:12px}
.signal-display{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:16px;height:76px;margin:11px 0 8px}
.signal-display canvas{width:100%;height:66px;min-width:0;display:block}
.track-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0;color:#c9ddc5}
.track-stats>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;min-width:0}
.track-stats svg{width:15px;height:15px;color:#84b9b9;stroke-width:1.5}
.track-stats output{font:500 14px/1.2 var(--mono);white-space:nowrap;font-variant-numeric:tabular-nums;text-shadow:0 0 6px #b4d0bc25}
#work .visual-tools .tool-name{animation:tool-drift 8s ease-in-out infinite alternate;will-change:transform}
#work .tool-name:nth-child(2){animation-duration:10s;animation-delay:-3s}#work .tool-name:nth-child(3){animation-duration:11s;animation-delay:-6s}#work .tool-name:nth-child(4){animation-duration:9s;animation-delay:-2s}#work .tool-name:nth-child(5){animation-duration:12s;animation-delay:-5s}
@keyframes tool-drift{0%{transform:translate3d(-3px,3px,0) rotate(-.35deg)}100%{transform:translate3d(5px,-5px,0) rotate(.35deg)}}
#process .spatial-scene .spatial-image{transform:perspective(1100px) rotateX(var(--spatial-rx,0deg)) rotateY(var(--spatial-ry,0deg))!important;transform-style:preserve-3d;transition:transform .28s cubic-bezier(.2,.7,.2,1)}
.spatial-shine{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:0;border-radius:2px;background:radial-gradient(ellipse at var(--shine-x,50%) var(--shine-y,40%),#edfff944,transparent 62%),linear-gradient(var(--shine-angle,125deg),transparent 27%,#e6fff600 38%,#e6fff63b 49%,#fff1 53%,transparent 65%);mix-blend-mode:screen;box-shadow:inset 0 0 0 1px #e2fff977;transition:opacity .35s}
#process .spatial-image:hover .spatial-shine,#process .spatial-image:focus-visible .spatial-shine{opacity:1}
.motion-paused #work .tool-name{animation-play-state:paused!important}.motion-paused #process .spatial-scene .spatial-image{transform:none!important;transition:none}
@media(max-width:700px){.signal-display{gap:10px;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.track-stats{gap:6px}.track-stats output{font-size:13px}.native-player-inner{padding-top:22px}}
@media(prefers-reduced-motion:reduce){#work .visual-tools .tool-name{animation:none}#process .spatial-scene .spatial-image{transform:none!important;transition:none}.spatial-shine{transition:none}}
/* Display contents only: the existing 95px slot and all chassis styles stay intact. */
.console-display .signal-display{display:flex;flex-direction:column;align-items:stretch;gap:4px;height:84px;margin:7px 0 4px}
.console-display .signal-display canvas{display:block;flex:0 0 66px;width:100%;height:66px;min-width:0}
.signal-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;height:14px;font:9px/14px var(--mono);color:#89abaa}
#peak-passage{white-space:nowrap;font-size:9px;letter-spacing:.015em}#peak-passage output{color:#dbc29c;margin-left:4px;font-variant-numeric:tabular-nums}
.console-display .track-stats{display:flex;align-items:center;gap:12px;min-width:0}
.console-display .track-stats>span{flex-direction:row;gap:4px;white-space:nowrap}
.console-display .track-stats svg{width:10px;height:10px;flex:0 0 10px}
.console-display .track-stats output{font:500 10px/14px var(--mono);text-shadow:none}
@media(max-width:390px){.console-display .track-stats{gap:7px}.console-display .track-stats>span{gap:3px}#peak-passage{font-size:8px}}

/* Display-only density: chassis, screen coating and transport geometry retained. */
#track-context{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#bad2bf;font:8px/14px var(--mono);letter-spacing:.025em;text-decoration:none}
#track-context:hover{color:#e5e8c7}#track-context:focus-visible{outline:1px solid #c5ddb5;outline-offset:2px}
.console-display .signal-footer{gap:12px}.console-display .track-stats{flex-shrink:0;gap:8px}
#process .spatial-scene:nth-child(n){transition:none;will-change:transform}
#process .spatial-orbit{overflow:clip}
@media(max-width:390px){#track-context{font-size:7px}.console-display .track-stats{gap:5px}.console-display .track-stats output{font-size:8px}.console-display .signal-footer{gap:6px}}
/* Reclaim header gaps for graphics, keeping the same total screen footprint. */
.console-display .display-top{margin-bottom:4px}
.console-display #track-subtitle{margin-top:1px}
.console-display .signal-display{height:102px;margin-top:3px}
.console-display .signal-display canvas{height:84px;flex-basis:84px}
