:root{color:#1d1930;background:#f2f0ec;font-family:SF Pro Display,Helvetica Neue,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 7% 6%,rgb(117 89 255 / 12%),transparent 26rem),radial-gradient(circle at 91% 42%,rgb(88 230 193 / 13%),transparent 24rem),#f2f0ec}button,input,select{font:inherit}button{color:inherit}.app-shell{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:56px 0 36px}.topbar,.panel-heading,.metric-copy{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.eyebrow,.step,.unit-note,footer,.status,.live-label{font-family:SFMono-Regular,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}.eyebrow,.step{margin:0 0 10px;color:#7559ff;font-size:.72rem;font-weight:500}h1,h2,p{margin-top:0}h1{margin-bottom:10px;font-size:clamp(3rem,8vw,6.2rem);line-height:.94;letter-spacing:-.07em}h2{margin-bottom:0;font-size:1.25rem;letter-spacing:-.035em}.subtitle{max-width:660px;margin-bottom:0;color:#6f687d;font-size:1rem;line-height:1.7}.privacy-badge{display:flex;align-items:center;gap:9px;flex:none;margin-top:5px;padding:10px 14px;border:1px solid rgb(29 25 48 / 12%);border-radius:999px;background:#ffffff8f;font-family:SFMono-Regular,Consolas,monospace;font-size:.74rem}.privacy-dot,.live-label span{width:8px;height:8px;border-radius:50%;background:#24bb91;box-shadow:0 0 0 4px #24bb9126}.workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.78fr);gap:20px;margin-top:46px}.panel{border:1px solid rgb(29 25 48 / 10%);border-radius:28px;background:#ffffffb8;box-shadow:0 24px 70px #42315714;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.input-panel,.avatar-panel,.song-analysis-panel,.evolution-panel,.calibration-panel,.lab-panel,.evolution-catalog-panel,.evolution-debug-panel,.metrics-panel{padding:28px}.status{margin:0;padding:7px 10px;border-radius:7px;background:#e8e4df;color:#766f7c;font-size:.68rem;letter-spacing:.02em}.status[data-tone=active]{background:#d9f7ed;color:#087b5a}.status[data-tone=error]{background:#ffe1dc;color:#b63524}.source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:40px}.source-button{display:flex;align-items:center;gap:14px;min-height:96px;padding:18px;border:1px solid rgb(29 25 48 / 11%);border-radius:18px;background:#fff;cursor:pointer;text-align:left;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.source-button:hover{transform:translateY(-2px);border-color:#7559ff73;box-shadow:0 12px 30px #4a328117}.source-icon{display:grid;width:42px;height:42px;place-items:center;flex:none;border-radius:13px;background:#efecff;color:#7559ff;font-size:1.15rem}.source-button strong,.source-button small{display:block}.source-button strong{margin-bottom:5px;font-size:.91rem}.source-button small{overflow:hidden;max-width:175px;color:#847d8d;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.file-button input{position:absolute;width:1px;height:1px;opacity:0}audio{width:100%;margin-top:24px}audio[hidden]{display:none}.text-button{margin-top:20px;padding:0;border:0;border-bottom:1px solid currentColor;background:none;color:#6f687d;cursor:pointer;font-size:.78rem}.text-button:disabled{cursor:default;opacity:.34}.compact{align-items:center}.live-label{display:flex;align-items:center;gap:8px;margin:0;color:#776f80;font-size:.67rem}.avatar-stage{--loudness: 0;--energy: 0;--bass: 0;--brightness: 0;--pulse: 0;--evo-rgb: 184 148 218;--evo-secondary-rgb: 255 237 222;--evo-deep-rgb: 98 72 124;position:relative;display:grid;min-height:360px;place-items:center;overflow:hidden;margin-top:22px;border-radius:22px;background:radial-gradient(circle at 50% 43%,rgb(255 253 247 / 96%) 0 12%,transparent 46%),radial-gradient(circle at 50% 58%,rgb(var(--evo-rgb) / calc(16% + var(--brightness) * 8%)),transparent 66%),linear-gradient(145deg,rgb(var(--evo-secondary-rgb) / 62%),#f0e8f6 76%)}.avatar-asset-stack{position:absolute;inset:0;z-index:2;overflow:hidden;border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .32s ease}.avatar-stage[data-avatar-renderer=assets] .avatar-asset-stack{opacity:1}.avatar-asset-stack img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;transform-origin:50% 82%;transition:opacity 90ms linear,filter 90ms linear,transform 90ms linear}.avatar-asset-stack img[hidden]{display:none}.avatar-asset-stack [data-avatar-layer=background]{z-index:0;object-fit:cover;opacity:calc(.38 + var(--asset-energy) * .62);filter:brightness(calc(.66 + var(--asset-energy) * .62)) saturate(calc(.9 + var(--asset-brightness) * .3));transform:scale(calc(1 + var(--asset-energy) * .09))}.avatar-asset-stack [data-avatar-layer=aura]{z-index:1;opacity:calc(.28 + var(--asset-loudness) * .72);filter:brightness(calc(.8 + var(--asset-loudness) * .75)) saturate(calc(1 + var(--asset-brightness) * .45));transform:scale(calc(.9 + var(--asset-loudness) * .18))}.avatar-asset-stack [data-avatar-layer=body],.avatar-asset-stack [data-avatar-layer=mask],.avatar-asset-stack [data-avatar-layer=emissive],.avatar-asset-stack [data-avatar-layer=permanent]{transform:translateY(calc(6px - var(--asset-pulse) * 18px)) scaleX(calc(.96 + var(--asset-bass) * .1)) scaleY(calc(.96 + var(--asset-energy) * .08))}.avatar-asset-stack [data-avatar-layer=body]{z-index:3;filter:drop-shadow(0 18px 18px rgb(24 16 50 / 28%))}.avatar-asset-stack [data-avatar-layer=mask]{z-index:4;opacity:calc(.42 + var(--asset-brightness) * .58);filter:hue-rotate(calc(var(--asset-brightness) * -72deg)) saturate(calc(.85 + var(--asset-brightness) * .7));mix-blend-mode:color}.avatar-asset-stack [data-avatar-layer=emissive]{z-index:5;opacity:calc(.18 + var(--asset-loudness) * .82);filter:brightness(calc(.9 + var(--asset-loudness) * 1.4)) drop-shadow(0 0 calc(5px + var(--asset-loudness) * 18px) rgb(var(--evo-secondary-rgb) / 86%));mix-blend-mode:screen}.avatar-asset-stack [data-avatar-layer=permanent]{z-index:6;filter:drop-shadow(0 0 calc(4px + var(--asset-energy) * 10px) rgb(var(--evo-rgb) / 52%))}.avatar-asset-stack [data-avatar-layer=particles]{z-index:7;opacity:calc(.18 + var(--asset-pulse) * .82);filter:brightness(calc(.9 + var(--asset-pulse) * .9));transform:rotate(calc(var(--asset-energy) * 5deg)) scale(calc(.88 + var(--asset-pulse) * .2))}.avatar-asset-stack [data-avatar-layer=foreground]{z-index:8;opacity:calc(.42 + var(--asset-energy) * .58);filter:brightness(calc(.9 + var(--asset-loudness) * .4))}.avatar-stage[data-avatar-renderer=assets][data-avatar-scene=on]{--tilt-x: 0;--tilt-y: 0;--scene-float: 0;--scene-breath: 0;transform:perspective(900px) rotateX(calc(var(--tilt-y) * -4deg)) rotateY(calc(var(--tilt-x) * 5deg))}[data-avatar-scene=on] .avatar-asset-stack [data-avatar-layer=background]{opacity:calc(.7 + var(--asset-energy) * .3);filter:brightness(calc(.9 + var(--asset-energy) * .3)) saturate(calc(.9 + var(--asset-brightness) * .3));object-position:50% var(--scene-bg-y, 50%);scale:1.1;translate:calc(var(--tilt-x) * -12px) calc(var(--tilt-y) * -9px)}[data-avatar-scene=on] .avatar-asset-stack [data-avatar-layer=aura]{translate:calc(var(--tilt-x) * -3px) calc(var(--tilt-y) * -2px)}[data-avatar-scene=on] .avatar-asset-stack :is([data-avatar-layer=body],[data-avatar-layer=mask],[data-avatar-layer=emissive],[data-avatar-layer=permanent],.scene-vfx){translate:calc(var(--tilt-x) * 5px) calc(var(--tilt-y) * 3px)}[data-avatar-scene=on] .avatar-asset-stack :is([data-avatar-layer=body],[data-avatar-layer=mask],[data-avatar-layer=emissive],[data-avatar-layer=permanent]){scale:calc(1 + var(--scene-breath) * .01) calc(1 + var(--scene-breath) * .022)}[data-avatar-scene=on] .avatar-asset-stack [data-avatar-layer=body]{filter:drop-shadow(calc(var(--tilt-x) * -1.5px - 2px) -3px 1.5px rgb(var(--scene-key-rgb) / 55%)) drop-shadow(0 6px 8px rgb(24 16 50 / 22%))}.avatar-stage[data-avatar-asset-set=egg][data-avatar-scene=on] .avatar-asset-stack [data-avatar-layer=body]{transform-origin:50% 84%;transform:translate(calc(var(--egg-x, 0) * 1px)) translateY(calc(var(--egg-lift, 0) * -1px)) rotate(calc(var(--egg-angle, 0) * 1deg)) scale(var(--egg-width, 1),var(--egg-height, 1));scale:1}.avatar-stage[data-avatar-asset-set=base][data-avatar-scene=on] .avatar-asset-stack [data-avatar-layer=body]{transform-origin:50% 84%;transform:translateY(calc(var(--base-lift, 0) * -1px)) scale(var(--base-width, 1),var(--base-height, 1));scale:1}[data-avatar-scene=on] .avatar-asset-stack [data-avatar-layer=particles]{translate:calc(var(--tilt-x) * 14px) calc(var(--tilt-y) * 10px + var(--scene-float) * 5px)}[data-avatar-scene=on] .avatar-asset-stack [data-avatar-layer=foreground]{display:none}.avatar-asset-stack .scene-corner{--scene-corner-size: calc(var(--scene-square) * 1.25);position:absolute;z-index:8;bottom:-16px;width:calc(var(--scene-corner-size) * .5 + 16px);height:calc(var(--scene-corner-size) + 16px);overflow:hidden;pointer-events:none;translate:calc(var(--tilt-x) * 12px) calc(var(--tilt-y) * 8px)}.avatar-asset-stack .scene-corner.is-left{left:-16px}.avatar-asset-stack .scene-corner.is-right{right:-16px}.avatar-asset-stack .scene-corner img{inset:auto 0 0 auto;width:var(--scene-corner-size);height:var(--scene-corner-size);object-fit:fill}.avatar-asset-stack .scene-corner.is-left img{inset:auto auto 0 0}.avatar-asset-stack :is(.scene-foil,.scene-portal,.scene-vfx,.scene-shadow){position:absolute;pointer-events:none}.avatar-asset-stack .scene-foil{inset:0;z-index:1;background:linear-gradient(115deg,transparent 25%,rgb(var(--scene-key-rgb) / 35%) 42%,rgb(255 255 255 / 60%) 50%,rgb(150 220 255 / 35%) 58%,transparent 75%);background-size:300% 300%;background-position:calc(50% + var(--tilt-x) * 45%) calc(50% + var(--tilt-y) * 45%);mix-blend-mode:color-dodge;opacity:calc(var(--scene-foil) * .55)}.avatar-asset-stack .scene-portal{z-index:1;left:calc(var(--scene-left) + var(--scene-square) * .07);top:calc(var(--scene-top) + var(--scene-square) * .08);width:calc(var(--scene-square) * .24);aspect-ratio:1;overflow:hidden;border:3px solid rgb(var(--scene-key-rgb));border-radius:50%;box-shadow:0 0 0 2px #181032b3,0 0 22px rgb(var(--scene-key-rgb) / 65%);translate:calc(var(--tilt-x) * -5px) calc(var(--tilt-y) * -4px);scale:calc(1 + var(--scene-breath) * .02)}.avatar-asset-stack .scene-portal:after{position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 0 16px #0c081e99;content:""}.avatar-asset-stack .scene-portal img{inset:-15%;width:130%;height:130%;object-fit:cover;opacity:0;transition:opacity .7s ease;translate:calc(var(--tilt-x) * -14px) calc(var(--tilt-y) * -10px)}.avatar-asset-stack .scene-portal img.is-active{opacity:1}.avatar-asset-stack .scene-vfx{inset:0;z-index:2;width:100%;height:100%}.avatar-asset-stack .scene-shadow{z-index:2;left:calc(var(--scene-left) + var(--scene-square) * .5);top:calc(var(--scene-top) + var(--scene-square) * var(--scene-ground));width:calc(var(--scene-square) * var(--scene-shadow-width));aspect-ratio:6 / 1;border-radius:50%;background:radial-gradient(closest-side,#12080a6b,#12080a00);transform:translate(-50%,-50%);translate:calc(var(--tilt-x) * 5px) calc(var(--tilt-y) * 3px);scale:calc(1 - var(--scene-breath) * .03)}.avatar-stage[data-avatar-renderer=assets]>.avatar-aura,.avatar-stage[data-avatar-renderer=assets]>.affinity-objects,.avatar-stage[data-avatar-renderer=assets]>.specialization-objects,.avatar-stage[data-avatar-renderer=assets]>.mastery-objects,.avatar-stage[data-avatar-renderer=assets]>.avatar-shadow,.avatar-stage[data-avatar-renderer=assets]>.avatar-creature{opacity:0;visibility:hidden}.avatar-aura{position:absolute;z-index:0;border:1px solid hsl(calc(258 - var(--brightness) * 90) 90% 68% / calc(18% + var(--loudness) * 45%));border-radius:50%;opacity:calc(.18 + var(--loudness) * .82);transform:scale(calc(.84 + var(--loudness) * .42));transition:opacity 80ms linear,transform 80ms linear}.aura-outer{width:270px;height:230px;box-shadow:0 0 calc(12px + var(--loudness) * 55px) hsl(calc(260 - var(--brightness) * 90) 88% 66% / calc(8% + var(--loudness) * 35%)),inset 0 0 calc(10px + var(--loudness) * 28px) hsl(calc(250 - var(--brightness) * 70) 88% 75% / 22%)}.aura-inner{width:210px;height:184px;border-style:dashed;transform:rotate(calc(var(--energy) * 55deg)) scale(calc(.9 + var(--loudness) * .3))}.avatar-creature{position:relative;z-index:2;width:270px;height:255px;transform:translateY(calc(15px - var(--pulse) * 26px)) scale(calc(.96 + var(--energy) * .08));transition:transform 70ms linear}.avatar-core{position:absolute;bottom:34px;left:50%;z-index:3;width:calc(118px + var(--bass) * 78px);height:calc(136px + var(--energy) * 18px);border:1px solid rgb(255 255 255 / 85%);border-radius:calc(49% - var(--energy) * 8%) calc(49% - var(--bass) * 10%) calc(45% + var(--bass) * 5%) calc(52% - var(--energy) * 7%);background:linear-gradient(145deg,hsl(calc(263 - var(--brightness) * 115) 86% calc(74% + var(--brightness) * 8%)),hsl(calc(278 - var(--brightness) * 105) 72% calc(54% + var(--brightness) * 12%)));box-shadow:inset -16px -18px 34px #2d185d2e,0 18px 35px #442b6f3b;transform:translate(-50%);transition:width 90ms linear,height 90ms linear,border-radius 90ms linear,background .12s linear}.body-highlight{position:absolute;top:12%;left:20%;width:36%;height:25%;border-radius:50%;background:rgb(255 255 255 / calc(42% + var(--brightness) * 34%));filter:blur(4px);transform:rotate(-18deg)}.avatar-ear{position:absolute;bottom:158px;z-index:2;width:calc(31px + var(--brightness) * 12px);height:calc(34px + var(--brightness) * 70px);overflow:hidden;border:1px solid rgb(255 255 255 / 70%);border-radius:80% 20% 72% 28%;background:linear-gradient(180deg,hsl(calc(255 - var(--brightness) * 105) 90% 83% / 82%),hsl(calc(275 - var(--brightness) * 110) 73% 61% / 92%));transform-origin:bottom center;transition:width 90ms linear,height 90ms linear,background .12s linear}.avatar-ear span{position:absolute;inset:18% 26%;border-radius:inherit;background:rgb(255 255 255 / calc(18% + var(--brightness) * 42%))}.avatar-ear.ear-left{left:calc(50% - 72px - var(--bass) * 17px);transform:rotate(calc(-20deg - var(--energy) * 11deg))}.avatar-ear.ear-right{right:calc(50% - 72px - var(--bass) * 17px);transform:scaleX(-1) rotate(calc(-20deg - var(--energy) * 11deg))}.avatar-tail{position:absolute;right:calc(12px - var(--bass) * 23px);bottom:calc(64px - var(--bass) * 8px);z-index:1;width:calc(58px + var(--bass) * 76px);height:calc(15px + var(--bass) * 27px);border:1px solid rgb(255 255 255 / 65%);border-radius:25% 75% 72% 28%;background:linear-gradient(90deg,hsl(calc(274 - var(--brightness) * 105) 73% 57%),hsl(calc(250 - var(--brightness) * 90) 86% 76% / 72%));box-shadow:0 10px 22px #442b6f2e;transform:rotate(calc(-10deg - var(--energy) * 20deg));transform-origin:left center;transition:width 90ms linear,height 90ms linear,transform 90ms linear}.avatar-tail span{position:absolute;top:14%;width:2px;height:72%;border-radius:99px;background:#fff6}.avatar-tail span:nth-child(1){left:34%}.avatar-tail span:nth-child(2){left:57%}.avatar-tail span:nth-child(3){left:76%}.energy-crest{position:absolute;bottom:149px;left:50%;z-index:1;display:flex;align-items:flex-end;gap:4px;height:52px;transform:translate(-50%)}.energy-crest span{width:calc(4px + var(--energy) * 7px);height:calc(5px + var(--energy) * 42px);border-radius:90% 10% 65% 35%;background:hsl(calc(258 - var(--brightness) * 95) 86% 68% / calc(15% + var(--energy) * 80%));transform-origin:bottom center;transition:width 80ms linear,height 80ms linear}.energy-crest span:nth-child(1){transform:rotate(-36deg) scaleY(.55)}.energy-crest span:nth-child(2){transform:rotate(-18deg) scaleY(.82)}.energy-crest span:nth-child(4){transform:rotate(18deg) scaleY(.82)}.energy-crest span:nth-child(5){transform:rotate(36deg) scaleY(.55)}.body-pattern span{position:absolute;z-index:1;width:calc(13px + var(--pulse) * 8px);height:calc(7px + var(--pulse) * 6px);border:2px solid rgb(255 255 255 / 54%);border-radius:50%;transform:rotate(-24deg)}.pattern-one{top:23%;right:19%;opacity:clamp(0,calc(var(--pulse) * 3),1)}.pattern-two{top:36%;right:12%;opacity:clamp(0,calc((var(--pulse) - .22) * 4),1)}.pattern-three{top:49%;right:17%;opacity:clamp(0,calc((var(--pulse) - .48) * 4),1)}.eye{position:absolute;z-index:2;top:46%;width:9px;height:calc(12px - var(--brightness) * 5px);border-radius:50%;background:#28203b}.eye-left{left:34%}.eye-right{right:34%}.mouth{position:absolute;z-index:2;top:64%;left:50%;width:calc(17px + var(--loudness) * 8px);height:calc(5px + var(--loudness) * 11px);transform:translate(-50%);border:2px solid #40354f;border-top:0;border-radius:0 0 20px 20px}.avatar-shadow{position:absolute;top:76%;width:calc(108px + var(--bass) * 72px);height:24px;border-radius:50%;background:#30234a24;filter:blur(9px);transform:scaleX(calc(1 + var(--bass) * .18 - var(--pulse) * .12))}.avatar-note{margin:16px 3px 0;color:#847d8d;font-size:.72rem;line-height:1.55}.trait-legend{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.trait-legend span{padding:5px 8px;border-radius:999px;background:#f0edf3;color:#766f7d;font-family:SFMono-Regular,Consolas,monospace;font-size:.58rem}.song-analysis-panel,.calibration-panel,.lab-panel,.metrics-panel{margin-top:20px}.duration-control{display:flex;align-items:center;gap:10px;flex:none}.duration-control label{color:#817987;font-size:.7rem}.duration-control select{padding:8px 30px 8px 11px;border:1px solid rgb(29 25 48 / 12%);border-radius:9px;background:#fff;color:#4f4658}.analysis-session{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:26px;padding:18px;border:1px solid rgb(29 25 48 / 9%);border-radius:16px;background:#f6f3f7}.analysis-copy strong,.analysis-copy span{display:block}.analysis-copy strong{margin-bottom:6px;font-size:.88rem}.analysis-copy span{color:#8c8492;font-size:.72rem}.analysis-actions,.result-actions{display:flex;align-items:center;gap:8px;flex:none}.primary-button,.secondary-button{padding:9px 13px;border-radius:9px;cursor:pointer;font-size:.72rem}.primary-button{border:1px solid #7559ff;background:#7559ff;color:#fff}.secondary-button{border:1px solid rgb(29 25 48 / 12%);background:#fff;color:#6d6575}.primary-button:disabled,.secondary-button:disabled{cursor:default;opacity:.36}.analysis-progress{height:8px;overflow:hidden;margin-top:16px;border-radius:999px;background:#e8e3eb}.analysis-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7559ff,#58e6c1);transition:width .1s linear}.analysis-progress-meta{display:flex;justify-content:space-between;margin-top:8px;color:#958e9b;font-family:SFMono-Regular,Consolas,monospace;font-size:.63rem}.segment-selection{display:grid;grid-template-columns:minmax(160px,.75fr) minmax(0,1.5fr);align-items:center;gap:16px 22px;margin-top:18px;padding:16px 18px;border:1px solid rgb(88 230 193 / 30%);border-radius:15px;background:linear-gradient(135deg,#58e6c117,#7559ff12)}.segment-selection[hidden]{display:none}.segment-selection>div>strong{font-size:.78rem}.segment-selection>p{grid-column:1 / -1;margin:0;color:#89818f;font-size:.64rem}.segment-selection-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.segment-selection-list article{min-width:0;padding:10px;border-radius:10px;background:#ffffffc2}.segment-selection-list span,.segment-selection-list strong,.segment-selection-list small{display:block}.segment-selection-list span{color:#6e57d6;font-size:.59rem;font-weight:750}.segment-selection-list strong{margin-top:5px;font-family:SFMono-Regular,Consolas,monospace;font-size:.7rem}.segment-selection-list small{margin-top:4px;overflow:hidden;color:#918a96;font-size:.56rem;text-overflow:ellipsis;white-space:nowrap}.song-result{margin-top:24px;padding:20px;border:1px solid rgb(117 89 255 / 20%);border-radius:18px;background:linear-gradient(145deg,#7559ff12,#58e6c114)}.result-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.result-heading h3{margin:0;font-size:1rem}.result-actions>span{color:#88808f;font-family:SFMono-Regular,Consolas,monospace;font-size:.64rem}.song-dna-result{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:18px}.style-result-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:20px}.style-result-heading span{color:#6e57d6;font-size:.62rem;font-weight:800;letter-spacing:.08em}.style-result-heading small{color:#918a96;font-size:.58rem}.style-dna-result{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:9px}.style-dna-result article{min-width:0;padding:13px;border:1px solid rgb(117 89 255 / 10%);border-radius:12px;background:#ffffff94}.style-dna-result article>span,.style-dna-result article>strong,.style-dna-result article>output{display:block}.style-dna-result article>span{overflow:hidden;color:#968f9b;font-size:.61rem;text-overflow:ellipsis;white-space:nowrap}.style-dna-result article>strong{margin-top:3px;font-size:.7rem}.style-dna-result article>output{margin-top:10px;color:#5f42e7;font-family:SFMono-Regular,Consolas,monospace;font-size:.78rem}.song-dna-result article{min-width:0;padding:13px;border-radius:12px;background:#ffffffbd}.song-dna-result article>span,.song-dna-result article>strong,.song-dna-result article>output{display:block}.song-dna-result article>span{overflow:hidden;color:#968f9b;font-size:.61rem;text-overflow:ellipsis;white-space:nowrap}.song-dna-result article>strong{margin-top:3px;font-size:.73rem}.song-dna-result article>output{margin-top:10px;color:#5f42e7;font-family:SFMono-Regular,Consolas,monospace;font-size:.78rem}.result-meter{height:4px;margin-top:9px;overflow:hidden;border-radius:999px;background:#e5e0e9}.result-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7559ff,#58e6c1)}.result-note{margin:14px 0 0;color:#837b89;font-size:.68rem}.evolution-panel{padding:28px}.evolution-heading{align-items:center}.evolution-mode-badge{padding:7px 10px;border-radius:8px;background:#eeeaff;color:#6549df;font-family:SFMono-Regular,Consolas,monospace;font-size:.64rem}.evolution-progress-copy{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px}.evolution-progress-copy span{font-size:.76rem;font-weight:650}.evolution-progress-copy small{color:#928a98;font-family:SFMono-Regular,Consolas,monospace;font-size:.59rem}.evolution-progress{height:8px;overflow:hidden;margin-top:10px;border-radius:999px;background:#e7e2ea}.evolution-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7559ff,#58e6c1);transition:width .28s ease}.evolution-empty{margin-top:22px;padding:24px;border:1px dashed rgb(117 89 255 / 30%);border-radius:16px;background:linear-gradient(135deg,#7559ff0f,#58e6c112);text-align:center}.evolution-empty strong{font-size:.82rem}.evolution-empty p{margin:7px 0 0;color:#857d8b;font-size:.7rem;line-height:1.55}.evolution-preview-content{margin-top:22px}.evolution-preview-content[hidden],.evolution-empty[hidden]{display:none}.evolution-comparison{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:12px}.evolution-comparison article{padding:16px;border:1px solid rgb(29 25 48 / 9%);border-radius:14px;background:#f5f2f6}.evolution-comparison article.is-next{border-color:#7559ff47;background:linear-gradient(135deg,#eeeaff,#e9faf5)}.evolution-comparison article span,.evolution-comparison article strong{display:block}.evolution-comparison article span{color:#948c9a;font-size:.61rem}.evolution-comparison article strong{margin-top:7px;font-size:.76rem}.evolution-arrow{align-self:center;color:#7559ff;font-size:1.15rem}.evolution-reason{margin:18px 0 0;color:#5f5769;font-size:.74rem;line-height:1.55}.evolution-candidates{display:grid;gap:7px;margin-top:14px}.candidate-score{display:grid;grid-template-columns:minmax(128px,.85fr) minmax(100px,1fr) 34px;align-items:center;gap:10px;font-size:.64rem}.candidate-score>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.candidate-score>div{height:5px;overflow:hidden;border-radius:999px;background:#e7e1eb}.candidate-score i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7559ff,#58e6c1)}.candidate-score output{color:#6d6275;font-family:SFMono-Regular,Consolas,monospace;text-align:right}.evolution-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.evolution-message,.evolution-session-note{color:#7f7786;font-size:.68rem;line-height:1.5}.evolution-message{margin:18px 0 0}.evolution-session-note{margin:5px 0 0;color:#a098a5}.avatar-stage[data-evolution-preview=true]{box-shadow:inset 0 0 0 2px #7559ff3d}.avatar-stage[data-lineage=weight] .avatar-core{width:calc(150px + var(--bass) * 72px);height:calc(128px + var(--energy) * 18px);border-radius:46% 46% 40% 40%}.avatar-stage[data-lineage=weight] .avatar-tail{width:calc(92px + var(--bass) * 76px);height:calc(25px + var(--bass) * 27px)}.avatar-stage[data-lineage=motion] .energy-crest span{width:calc(8px + var(--energy) * 7px);height:calc(30px + var(--energy) * 42px);background:hsl(calc(258 - var(--brightness) * 95) 86% 64% / 88%)}.avatar-stage[data-lineage=motion] .avatar-core{height:calc(156px + var(--energy) * 18px)}.avatar-stage[data-lineage=light] .avatar-ear{width:calc(39px + var(--brightness) * 12px);height:calc(92px + var(--brightness) * 70px);filter:drop-shadow(0 0 12px rgb(120 236 222 / 50%))}.avatar-stage[data-lineage=light] .avatar-core{background:linear-gradient(145deg,#c9fff3,#9a8cff 72%)}.avatar-stage[data-lineage=rhythm] .body-pattern span{width:calc(18px + var(--pulse) * 8px);height:calc(10px + var(--pulse) * 6px);border-width:3px;opacity:.9}.avatar-stage[data-lineage=resonance] .avatar-aura{opacity:calc(.65 + var(--loudness) * .35);border-width:3px}.avatar-stage[data-lineage=resonance] .aura-outer{box-shadow:0 0 calc(32px + var(--loudness) * 55px) #7559ff61}.avatar-stage[data-direction=drive] .avatar-core{border:5px solid rgb(82 60 133 / 32%);box-shadow:inset -18px -20px 32px #2d185d3d,0 20px 36px #442b6f47}.avatar-stage[data-direction=shine] .body-highlight{width:52%;height:38%;background:#ffffffc7}.avatar-stage[data-direction=rhythm] .avatar-tail span{width:5px;background:#ffffffb3}.evolution-object-layer,.evolution-burst{position:absolute;inset:0;pointer-events:none}.evolution-object-layer{opacity:0;transition:opacity .26s ease,transform .36s ease}.evolution-object-layer span,.evolution-burst span{position:absolute;display:block}.affinity-objects{z-index:1}.avatar-stage[data-lineage] .affinity-objects{opacity:1}.affinity-objects span{width:14px;height:14px;border:2px solid rgb(255 255 255 / 72%);background:#8d78ff;box-shadow:0 7px 16px #49347c33}.affinity-objects span:nth-child(1){top:24%;left:17%}.affinity-objects span:nth-child(2){top:18%;right:18%}.affinity-objects span:nth-child(3){top:50%;left:10%}.affinity-objects span:nth-child(4){top:47%;right:9%}.affinity-objects span:nth-child(5){bottom:14%;left:48%}.avatar-stage[data-lineage=weight] .affinity-objects span{top:auto;bottom:16%;width:24px;height:16px;border-radius:60% 40% 45% 55%;background:linear-gradient(145deg,#8469ba,#503d75);transform:rotate(-12deg)}.avatar-stage[data-lineage=weight] .affinity-objects span:nth-child(1){left:15%}.avatar-stage[data-lineage=weight] .affinity-objects span:nth-child(2){right:14%;left:auto;transform:rotate(16deg) scale(.8)}.avatar-stage[data-lineage=weight] .affinity-objects span:nth-child(3){bottom:11%;left:28%;transform:scale(.6)}.avatar-stage[data-lineage=weight] .affinity-objects span:nth-child(4){right:29%;left:auto;transform:scale(.55)}.avatar-stage[data-lineage=weight] .affinity-objects span:nth-child(5){left:49%;transform:scale(.72)}.avatar-stage[data-lineage=motion] .affinity-objects{animation:evolution-orbit 8s linear infinite}.avatar-stage[data-lineage=motion] .affinity-objects span{border:0;border-radius:70% 0 70% 30%;background:linear-gradient(135deg,#7559ff,#58e6c1);clip-path:polygon(0 48%,100% 0,65% 100%)}.avatar-stage[data-lineage=light] .affinity-objects span{border-radius:3px;background:#d2fff6;box-shadow:0 0 18px #67ead2,0 0 7px #fff;transform:rotate(45deg);animation:evolution-twinkle 1.8s ease-in-out infinite alternate}.avatar-stage[data-lineage=light] .affinity-objects span:nth-child(2n){animation-delay:-.9s}.avatar-stage[data-lineage=rhythm] .affinity-objects span{border:4px solid #6c55df;border-radius:50%;background:transparent;box-shadow:0 0 0 4px #58e6c138;animation:rhythm-node 1.2s ease-in-out infinite alternate}.avatar-stage[data-lineage=resonance] .affinity-objects span{width:46px;height:46px;border:2px solid rgb(117 89 255 / 42%);border-radius:50%;background:transparent;box-shadow:inset 0 0 14px #58e6c12e;animation:resonance-wave 2.4s ease-out infinite}.avatar-stage[data-lineage=resonance] .affinity-objects span:nth-child(2){animation-delay:-.5s}.avatar-stage[data-lineage=resonance] .affinity-objects span:nth-child(3){animation-delay:-1s}.avatar-stage[data-lineage=resonance] .affinity-objects span:nth-child(4){animation-delay:-1.5s}.avatar-stage[data-lineage=resonance] .affinity-objects span:nth-child(5){animation-delay:-2s}.specialization-objects{z-index:3}.avatar-stage[data-direction] .specialization-objects{opacity:1}.avatar-stage[data-direction=drive] .specialization-objects span{width:32px;height:50px;border:3px solid rgb(255 255 255 / 68%);border-radius:45% 45% 30% 30%;background:linear-gradient(145deg,#69559a,#b29ae2);box-shadow:0 10px 20px #3b26633d}.avatar-stage[data-direction=drive] .specialization-objects span:nth-child(1){top:39%;left:23%;transform:rotate(-24deg)}.avatar-stage[data-direction=drive] .specialization-objects span:nth-child(2){top:39%;right:23%;transform:rotate(24deg)}.avatar-stage[data-direction=drive] .specialization-objects span:nth-child(3){top:23%;left:35%;width:18px;height:38px;transform:rotate(-32deg)}.avatar-stage[data-direction=drive] .specialization-objects span:nth-child(4){top:23%;right:35%;width:18px;height:38px;transform:rotate(32deg)}.avatar-stage[data-direction=shine] .specialization-objects span:first-child{top:19%;left:50%;width:118px;height:34px;border:4px solid rgb(113 232 211 / 72%);border-radius:50%;box-shadow:0 0 22px #7cebd894;transform:translate(-50%) rotate(-5deg)}.avatar-stage[data-direction=shine] .specialization-objects span:not(:first-child){width:13px;height:13px;border-radius:3px;background:#d9fff8;box-shadow:0 0 14px #65e8d0;transform:rotate(45deg)}.avatar-stage[data-direction=shine] .specialization-objects span:nth-child(2){top:34%;left:18%}.avatar-stage[data-direction=shine] .specialization-objects span:nth-child(3){top:31%;right:17%}.avatar-stage[data-direction=shine] .specialization-objects span:nth-child(4){bottom:25%;right:13%}.avatar-stage[data-direction=rhythm] .specialization-objects{animation:evolution-orbit 12s linear infinite reverse}.avatar-stage[data-direction=rhythm] .specialization-objects span{width:22px;height:22px;border:5px solid #5d45ce;border-radius:50%;background:#bff8e9;box-shadow:0 0 0 5px #7559ff29}.avatar-stage[data-direction=rhythm] .specialization-objects span:nth-child(1){top:20%;left:24%}.avatar-stage[data-direction=rhythm] .specialization-objects span:nth-child(2){top:20%;right:24%}.avatar-stage[data-direction=rhythm] .specialization-objects span:nth-child(3){bottom:18%;left:20%}.avatar-stage[data-direction=rhythm] .specialization-objects span:nth-child(4){right:19%;bottom:18%}.mastery-objects{z-index:4}.avatar-stage[data-mastery] .mastery-objects{opacity:1}.avatar-stage[data-mastery=echo] .mastery-objects span{top:50%;left:50%;width:170px;height:145px;border:2px solid rgb(117 89 255 / 35%);border-radius:50%;transform:translate(-50%,-50%);animation:echo-master-ring 2.8s ease-out infinite}.avatar-stage[data-mastery=echo] .mastery-objects span:nth-child(2){width:204px;height:173px;animation-delay:-.7s}.avatar-stage[data-mastery=echo] .mastery-objects span:nth-child(3){width:238px;height:201px;animation-delay:-1.4s}.avatar-stage[data-mastery=echo] .mastery-objects span:nth-child(4){width:272px;height:229px;animation-delay:-2.1s}.avatar-stage[data-mastery=echo] .mastery-objects span:nth-child(5){display:none}.avatar-stage[data-mastery=harmony] .mastery-objects span{top:16%;width:23px;height:23px;border:2px solid rgb(255 255 255 / 80%);border-radius:5px 50%;background:linear-gradient(145deg,#ffe29b,#a68cff 55%,#75ecd7);box-shadow:0 0 18px #9a7dff6b;transform:rotate(45deg)}.avatar-stage[data-mastery=harmony] .mastery-objects span:nth-child(1){left:calc(50% - 54px);transform:rotate(28deg) scale(.8)}.avatar-stage[data-mastery=harmony] .mastery-objects span:nth-child(2){left:calc(50% - 12px);top:11%;transform:rotate(45deg) scale(1.15)}.avatar-stage[data-mastery=harmony] .mastery-objects span:nth-child(3){right:calc(50% - 54px);transform:rotate(62deg) scale(.8)}.avatar-stage[data-mastery=harmony] .mastery-objects span:nth-child(4){top:52%;left:12%;transform:rotate(45deg) scale(.55)}.avatar-stage[data-mastery=harmony] .mastery-objects span:nth-child(5){top:52%;right:12%;transform:rotate(45deg) scale(.55)}.avatar-stage[data-mastery=explorer] .mastery-objects{animation:explorer-orbit 9s ease-in-out infinite alternate}.avatar-stage[data-mastery=explorer] .mastery-objects span{width:13px;height:34px;border-radius:90% 10% 70% 30%;background:linear-gradient(#fff,#59e5c1 38%,#7559ff);box-shadow:0 0 17px #60dbc385;transform:rotate(34deg)}.avatar-stage[data-mastery=explorer] .mastery-objects span:nth-child(1){top:14%;left:12%}.avatar-stage[data-mastery=explorer] .mastery-objects span:nth-child(2){top:25%;right:9%;transform:rotate(72deg) scale(.8)}.avatar-stage[data-mastery=explorer] .mastery-objects span:nth-child(3){bottom:12%;left:16%;transform:rotate(-20deg) scale(.65)}.avatar-stage[data-mastery=explorer] .mastery-objects span:nth-child(4){right:20%;bottom:14%;transform:rotate(120deg) scale(.72)}.avatar-stage[data-mastery=explorer] .mastery-objects span:nth-child(5){top:11%;left:58%;transform:rotate(12deg) scale(.5)}.avatar-stage{isolation:isolate;transition:background .42s ease,box-shadow .42s ease}.avatar-stage[data-lineage=weight]{--evo-rgb: 255 105 72;--evo-secondary-rgb: 255 205 92;--evo-deep-rgb: 92 30 40}.avatar-stage[data-lineage=motion]{--evo-rgb: 125 71 255;--evo-secondary-rgb: 52 242 224;--evo-deep-rgb: 39 22 111}.avatar-stage[data-lineage=light]{--evo-rgb: 255 196 69;--evo-secondary-rgb: 255 250 191;--evo-deep-rgb: 120 72 16}.avatar-stage[data-lineage=rhythm]{--evo-rgb: 255 58 151;--evo-secondary-rgb: 180 255 68;--evo-deep-rgb: 89 13 75}.avatar-stage[data-lineage=resonance]{--evo-rgb: 38 206 220;--evo-secondary-rgb: 143 96 255;--evo-deep-rgb: 15 57 100}.avatar-stage[data-stage=stage1]{background:radial-gradient(circle at 50% 52%,rgb(var(--evo-rgb) / 20%),transparent 46%),linear-gradient(145deg,rgb(var(--evo-secondary-rgb) / 8%),#f4f1f8 72%)}.avatar-stage[data-stage=stage2]{background:radial-gradient(circle at 50% 48%,rgb(var(--evo-secondary-rgb) / 24%),transparent 38%),radial-gradient(circle at 50% 58%,rgb(var(--evo-rgb) / 22%),transparent 62%),linear-gradient(145deg,rgb(var(--evo-deep-rgb) / 9%),#f4f1f8 70%);box-shadow:inset 0 0 52px rgb(var(--evo-rgb) / 10%)}.avatar-stage:before,.avatar-stage:after{position:absolute;pointer-events:none;content:""}.avatar-stage:before{inset:8%;z-index:0;border-radius:50%;background:repeating-conic-gradient(from 12deg,rgb(var(--evo-secondary-rgb) / 0%) 0 9deg,rgb(var(--evo-secondary-rgb) / 18%) 10deg 11deg),radial-gradient(circle,rgb(var(--evo-rgb) / 16%) 0 2%,transparent 3% 100%);filter:blur(.3px);opacity:0;transform:scale(.78) rotate(-8deg);transition:opacity .42s ease,transform .6s ease}.avatar-stage[data-stage=stage2]:before{opacity:.4;transform:scale(.94) rotate(0)}.avatar-stage[data-stage=final]{background:radial-gradient(circle at 50% 47%,rgb(var(--evo-secondary-rgb) / 32%) 0 8%,transparent 34%),radial-gradient(circle at 50% 52%,rgb(var(--evo-rgb) / 45%) 0 15%,transparent 58%),linear-gradient(145deg,rgb(var(--evo-deep-rgb) / 92%),#100d27 76%);box-shadow:inset 0 0 80px rgb(var(--evo-rgb) / 30%),inset 0 -80px 100px #0000004d,0 20px 45px rgb(var(--evo-deep-rgb) / 25%)}.avatar-stage[data-stage=final]:before{inset:-18%;background:repeating-conic-gradient(from 0deg,transparent 0 8deg,rgb(var(--evo-secondary-rgb) / 25%) 9deg 10deg,transparent 11deg 21deg),radial-gradient(circle,transparent 0 28%,rgb(var(--evo-rgb) / 24%) 29% 31%,transparent 32% 42%,rgb(var(--evo-secondary-rgb) / 16%) 43% 44%,transparent 45%);opacity:.88;transform:scale(1) rotate(0);animation:final-energy-field 24s linear infinite}.avatar-stage[data-stage=final]:after{inset:0;z-index:1;background:radial-gradient(circle at 18% 23%,rgb(var(--evo-secondary-rgb) / 84%) 0 2px,transparent 3px),radial-gradient(circle at 82% 26%,rgb(var(--evo-rgb) / 88%) 0 3px,transparent 4px),radial-gradient(circle at 13% 70%,rgb(255 255 255 / 68%) 0 2px,transparent 3px),radial-gradient(circle at 88% 74%,rgb(var(--evo-secondary-rgb) / 72%) 0 2px,transparent 3px),linear-gradient(110deg,transparent 0 44%,rgb(var(--evo-secondary-rgb) / 13%) 45% 47%,transparent 48% 100%);opacity:.9;animation:final-stars 4.8s ease-in-out infinite alternate}.avatar-stage[data-lineage] .avatar-aura{border-color:rgb(var(--evo-secondary-rgb) / 64%)}.avatar-stage[data-stage=stage1] .avatar-aura{opacity:calc(.44 + var(--loudness) * .32)}.avatar-stage[data-stage=stage2] .avatar-aura{border-width:2px;opacity:calc(.64 + var(--loudness) * .28)}.avatar-stage[data-stage=final] .avatar-aura{z-index:1;border-width:3px;border-color:rgb(var(--evo-secondary-rgb) / 78%);opacity:calc(.78 + var(--loudness) * .22);filter:drop-shadow(0 0 14px rgb(var(--evo-rgb) / 90%))}.avatar-stage[data-stage=final] .aura-outer{width:302px;height:270px;box-shadow:0 0 22px #ffffff7a,0 0 58px rgb(var(--evo-secondary-rgb) / 72%),0 0 110px rgb(var(--evo-rgb) / 58%),inset 0 0 36px rgb(var(--evo-secondary-rgb) / 44%)}.avatar-stage[data-stage=final] .aura-inner{width:238px;height:210px;border-style:solid;box-shadow:0 0 28px rgb(var(--evo-secondary-rgb) / 54%);animation:final-aura-breathe 2.6s ease-in-out infinite alternate}.avatar-stage[data-lineage] .avatar-core,.avatar-stage[data-lineage] .avatar-ear,.avatar-stage[data-lineage] .avatar-tail{background:linear-gradient(145deg,rgb(var(--evo-secondary-rgb)),rgb(var(--evo-rgb)) 54%,rgb(var(--evo-deep-rgb)));box-shadow:inset -18px -22px 32px rgb(var(--evo-deep-rgb) / 34%),inset 10px 10px 18px #ffffff2e,0 18px 36px rgb(var(--evo-deep-rgb) / 34%),0 0 26px rgb(var(--evo-rgb) / 28%)}.avatar-stage[data-lineage] .avatar-core:before{position:absolute;inset:10px;z-index:0;border:1px solid rgb(255 255 255 / 23%);border-radius:inherit;content:"";pointer-events:none}.avatar-stage[data-lineage=weight] .avatar-core{width:calc(172px + var(--bass) * 58px);height:calc(126px + var(--energy) * 16px);border:4px solid rgb(255 210 115 / 58%);border-radius:18% 18% 34% 34%/24% 24% 48% 48%;clip-path:polygon(12% 10%,30% 0,70% 0,88% 10%,100% 48%,84% 92%,62% 100%,38% 100%,16% 92%,0 48%)}.avatar-stage[data-lineage=weight] .avatar-ear{bottom:148px;width:60px;height:58px;border-radius:12% 88% 18% 82%;clip-path:polygon(0 100%,18% 20%,100% 0,70% 100%)}.avatar-stage[data-lineage=weight] .ear-left{left:calc(50% - 91px);transform:rotate(-34deg)}.avatar-stage[data-lineage=weight] .ear-right{right:calc(50% - 91px);transform:scaleX(-1) rotate(-34deg)}.avatar-stage[data-lineage=motion] .avatar-core{width:calc(132px + var(--bass) * 54px);height:calc(174px + var(--energy) * 18px);border-radius:58% 42% 54% 46%/30% 36% 64% 70%;clip-path:polygon(50% 0,84% 10%,100% 43%,77% 92%,50% 100%,18% 88%,0 44%,16% 12%);transform:translate(-50%) rotate(-3deg)}.avatar-stage[data-lineage=motion] .avatar-ear{bottom:172px;width:38px;height:108px;border-radius:90% 8% 80% 20%;clip-path:polygon(12% 100%,0 30%,100% 0,60% 100%)}.avatar-stage[data-lineage=motion] .ear-left{left:calc(50% - 82px);transform:rotate(-38deg)}.avatar-stage[data-lineage=motion] .ear-right{right:calc(50% - 82px);transform:scaleX(-1) rotate(-38deg)}.avatar-stage[data-lineage=light] .avatar-core{width:calc(148px + var(--bass) * 54px);height:calc(158px + var(--energy) * 18px);border:3px solid rgb(255 249 196 / 76%);border-radius:50% 50% 42% 42%/34% 34% 66% 66%;clip-path:polygon(50% 0,88% 18%,100% 54%,76% 94%,50% 100%,24% 94%,0 54%,12% 18%)}.avatar-stage[data-lineage=light] .avatar-ear{bottom:170px;width:48px;height:118px;border-radius:92% 8% 82% 18%;clip-path:polygon(18% 100%,0 22%,52% 0,100% 25%,70% 100%);filter:drop-shadow(0 0 15px rgb(255 220 95 / 82%))}.avatar-stage[data-lineage=rhythm] .avatar-core{width:calc(154px + var(--bass) * 52px);height:calc(146px + var(--energy) * 18px);border-radius:58% 42% 30% 70%/46% 34% 66% 54%;clip-path:polygon(14% 12%,58% 0,94% 20%,100% 67%,66% 100%,18% 91%,0 52%);transform:translate(-50%) rotate(-4deg)}.avatar-stage[data-lineage=rhythm] .avatar-ear{bottom:158px;width:62px;height:70px;border:7px solid rgb(190 255 78 / 62%);border-radius:50%;background:rgb(var(--evo-deep-rgb) / 80%)}.avatar-stage[data-lineage=rhythm] .ear-left{left:calc(50% - 92px);transform:rotate(-18deg)}.avatar-stage[data-lineage=rhythm] .ear-right{right:calc(50% - 92px);transform:scaleX(-1) rotate(-18deg)}.avatar-stage[data-lineage=resonance] .avatar-core{width:calc(144px + var(--bass) * 58px);height:calc(168px + var(--energy) * 18px);border:3px solid rgb(126 246 255 / 55%);border-radius:50% 50% 48% 52%/24% 24% 76% 76%;clip-path:polygon(24% 5%,50% 0,76% 5%,100% 40%,82% 90%,50% 100%,18% 90%,0 40%)}.avatar-stage[data-lineage=resonance] .avatar-ear{bottom:171px;width:52px;height:86px;border:5px double rgb(133 250 255 / 72%);border-radius:50% 50% 16% 84%;background:linear-gradient(160deg,rgb(var(--evo-secondary-rgb) / 82%),rgb(var(--evo-deep-rgb) / 94%))}.avatar-stage[data-lineage] .avatar-tail{border-color:rgb(var(--evo-secondary-rgb) / 64%);filter:drop-shadow(0 0 9px rgb(var(--evo-rgb) / 48%))}.avatar-stage[data-lineage=motion] .avatar-tail{clip-path:polygon(0 35%,100% 0,72% 52%,100% 100%,0 68%)}.avatar-stage[data-lineage=light] .avatar-tail{width:calc(78px + var(--bass) * 65px);height:calc(42px + var(--bass) * 20px);clip-path:polygon(0 45%,60% 0,100% 50%,60% 100%)}.avatar-stage[data-lineage=rhythm] .avatar-tail{width:calc(88px + var(--bass) * 65px);clip-path:polygon(0 30%,18% 0,36% 70%,55% 12%,73% 82%,100% 36%,100% 70%,72% 100%,54% 42%,34% 100%,15% 36%,0 66%)}.avatar-stage[data-lineage=resonance] .avatar-tail{height:calc(44px + var(--bass) * 26px);border-radius:50% 10%;background:radial-gradient(ellipse at left,rgb(var(--evo-secondary-rgb)),rgb(var(--evo-rgb) / 62%) 52%,transparent 72%)}.avatar-stage[data-stage=stage2] .avatar-creature{transform:translateY(calc(10px - var(--pulse) * 26px)) scale(calc(1.01 + var(--energy) * .08))}.avatar-stage[data-stage=final] .avatar-creature{z-index:3;transform:translateY(calc(4px - var(--pulse) * 24px)) scale(calc(1.1 + var(--energy) * .06));filter:drop-shadow(0 0 10px rgb(255 255 255 / 52%)) drop-shadow(0 0 28px rgb(var(--evo-rgb) / 82%)) drop-shadow(0 18px 20px rgb(0 0 0 / 35%))}.avatar-stage[data-stage=final] .avatar-core{border-width:4px;border-color:rgb(var(--evo-secondary-rgb) / 84%);box-shadow:inset -22px -26px 36px rgb(var(--evo-deep-rgb) / 42%),inset 12px 12px 20px #ffffff47,0 0 8px #ffffff7a,0 0 34px rgb(var(--evo-secondary-rgb) / 68%),0 24px 44px #0000006b}.avatar-stage[data-stage=final] .eye{width:11px;height:8px;border-radius:50% 50% 30% 30%;background:#fff;box-shadow:0 0 9px #fff,0 0 16px rgb(var(--evo-secondary-rgb))}.avatar-stage[data-stage=final] .mouth{border-color:#ffffffdb}.avatar-stage[data-stage=final] .avatar-shadow{background:rgb(var(--evo-rgb) / 32%);box-shadow:0 0 32px rgb(var(--evo-rgb) / 64%)}.avatar-stage[data-direction=drive] .specialization-objects span{background:linear-gradient(145deg,rgb(var(--evo-secondary-rgb)),rgb(var(--evo-deep-rgb)));box-shadow:0 0 16px rgb(var(--evo-rgb) / 54%),0 12px 20px #00000038}.avatar-stage[data-direction=shine] .specialization-objects span:first-child{border-color:rgb(var(--evo-secondary-rgb) / 92%);box-shadow:0 0 12px #fff,0 0 32px rgb(var(--evo-rgb) / 78%)}.avatar-stage[data-direction=rhythm] .specialization-objects span{border-color:rgb(var(--evo-rgb));background:rgb(var(--evo-secondary-rgb));box-shadow:0 0 16px rgb(var(--evo-secondary-rgb) / 68%)}.avatar-stage[data-stage=final] .affinity-objects,.avatar-stage[data-stage=final] .specialization-objects,.avatar-stage[data-stage=final] .mastery-objects{filter:drop-shadow(0 0 10px rgb(var(--evo-rgb) / 72%))}.avatar-stage[data-stage=final][data-mastery=echo] .mastery-objects span{border-color:rgb(var(--evo-secondary-rgb) / 72%);box-shadow:0 0 18px rgb(var(--evo-rgb) / 54%),inset 0 0 12px rgb(var(--evo-secondary-rgb) / 28%)}.avatar-stage[data-stage=final][data-mastery=harmony] .mastery-objects span{width:29px;height:29px;background:linear-gradient(145deg,#fff,rgb(var(--evo-secondary-rgb)) 38%,rgb(var(--evo-rgb)) 72%,rgb(var(--evo-deep-rgb)));box-shadow:0 0 8px #fff,0 0 24px rgb(var(--evo-secondary-rgb) / 84%)}.avatar-stage[data-stage=final][data-mastery=explorer] .mastery-objects span{width:18px;height:45px;background:linear-gradient(#fff,rgb(var(--evo-secondary-rgb)) 34%,rgb(var(--evo-rgb)) 68%,rgb(var(--evo-deep-rgb)));box-shadow:0 0 9px #fff,0 0 24px rgb(var(--evo-rgb) / 76%)}@keyframes final-energy-field{to{transform:scale(1.04) rotate(360deg)}}@keyframes final-stars{0%{opacity:.52;filter:blur(0)}to{opacity:1;filter:blur(.8px)}}@keyframes final-aura-breathe{0%{transform:rotate(-4deg) scale(.94);opacity:.72}to{transform:rotate(5deg) scale(1.08);opacity:1}}.evolution-burst{z-index:5;opacity:0}.evolution-burst span{top:52%;left:50%;width:11px;height:11px;border-radius:3px;background:linear-gradient(145deg,#fff4b0,#70ecd3 48%,#8b73ff);box-shadow:0 0 18px #7559ff8c}.avatar-stage.is-evolving .evolution-burst{opacity:1}.avatar-stage.is-evolving .evolution-burst span{animation:evolution-burst 1.3s cubic-bezier(.2,.75,.25,1) both}.avatar-stage.is-evolving .evolution-burst span:nth-child(2){animation-delay:40ms}.avatar-stage.is-evolving .evolution-burst span:nth-child(3){animation-delay:80ms}.avatar-stage.is-evolving .evolution-burst span:nth-child(4){animation-delay:.12s}.avatar-stage.is-evolving .evolution-burst span:nth-child(5){animation-delay:.16s}.avatar-stage.is-evolving .evolution-burst span:nth-child(6){animation-delay:.2s}.avatar-stage.is-evolving .evolution-burst span:nth-child(7){animation-delay:.24s}.avatar-stage.is-evolving .evolution-burst span:nth-child(8){animation-delay:.28s}.avatar-stage.is-evolving[data-avatar-renderer=assets] .avatar-asset-stack{animation:asset-evolution-reveal 1.25s cubic-bezier(.17,.82,.25,1) both}.evolution-unlock-label{position:absolute;bottom:15px;left:50%;z-index:6;padding:7px 11px;border:1px solid rgb(255 255 255 / 70%);border-radius:999px;background:#251c3cd1;color:#fff;font-family:SFMono-Regular,Consolas,monospace;font-size:.6rem;letter-spacing:.04em;opacity:0;pointer-events:none;transform:translate(-50%,12px)}.avatar-stage.is-evolving .evolution-unlock-label{animation:evolution-label 1.8s ease both}@keyframes evolution-orbit{to{transform:rotate(360deg)}}@keyframes explorer-orbit{0%{transform:rotate(-6deg) scale(.96)}to{transform:rotate(8deg) scale(1.04)}}@keyframes evolution-twinkle{0%{opacity:.35;scale:.72}to{opacity:1;scale:1.14}}@keyframes rhythm-node{0%{scale:.76;opacity:.55}to{scale:1.12;opacity:1}}@keyframes resonance-wave{0%{opacity:.75;scale:.45}to{opacity:0;scale:1.35}}@keyframes echo-master-ring{0%{opacity:.68;scale:.78}to{opacity:0;scale:1.18}}@keyframes evolution-burst{0%{opacity:0;transform:rotate(var(--burst-angle)) translateY(-15px) scale(.2)}24%{opacity:1}to{opacity:0;transform:rotate(var(--burst-angle)) translateY(-155px) scale(1.15) rotate(160deg)}}@keyframes evolution-label{0%,to{opacity:0;transform:translate(-50%,12px)}18%,72%{opacity:1;transform:translate(-50%)}}@keyframes asset-evolution-reveal{0%{opacity:0;filter:brightness(4) blur(13px);scale:.62}42%{opacity:1;filter:brightness(2.4) blur(2px);scale:1.1}to{opacity:1;filter:brightness(1) blur(0);scale:1}}@media(prefers-reduced-motion:reduce){.avatar-stage:before,.avatar-stage:after,.avatar-stage .avatar-aura,.avatar-stage.is-evolving .avatar-asset-stack,.evolution-catalog-avatar.is-sequence-step .avatar-asset-stack,.avatar-asset-stack img,.evolution-object-layer,.evolution-object-layer span,.avatar-stage.is-evolving .evolution-burst span,.avatar-stage.is-evolving .evolution-unlock-label{animation:none!important}}.evolution-debug-panel{padding:28px}.evolution-debug-heading{align-items:center}.debug-mode-badge{padding:7px 10px;border-radius:8px;background:#eee9e5;color:#887e78;font-family:SFMono-Regular,Consolas,monospace;font-size:.59rem}.debug-mode-badge[data-ready=true]{background:#dff8ef;color:#087b5a}.evolution-debug-intro{max-width:850px;margin:20px 0 0;color:#7d7584;font-size:.75rem;line-height:1.65}.debug-input-row{display:grid;grid-template-columns:minmax(170px,.4fr) minmax(0,1fr);gap:14px;margin-top:22px}.debug-input-row>label{padding:13px;border:1px solid rgb(29 25 48 / 9%);border-radius:13px;background:#f6f3f7}.debug-input-row>label span{display:block;margin-bottom:7px;color:#8d8593;font-size:.61rem}.debug-input-row input{width:100%;padding:8px 9px;border:1px solid rgb(29 25 48 / 12%);border-radius:8px;background:#fff;color:#4f4658;font-size:.7rem}.debug-current-dna{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.debug-current-dna span{padding:13px 10px;border-radius:12px;background:#f2eff5}.debug-current-dna b,.debug-current-dna output{display:block}.debug-current-dna b{overflow:hidden;color:#817887;font-size:.59rem;text-overflow:ellipsis}.debug-current-dna output{margin-top:8px;color:#6046d8;font-family:SFMono-Regular,Consolas,monospace;font-size:.75rem}.evolution-debug-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.danger-button{margin-left:auto;padding:9px 13px;border:1px solid rgb(184 57 45 / 22%);border-radius:9px;background:#fff7f5;color:#a53d32;cursor:pointer;font-size:.72rem}.evolution-debug-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:20px}.evolution-debug-stats article{min-width:0;padding:13px;border:1px solid rgb(29 25 48 / 8%);border-radius:12px;background:#faf9fa}.evolution-debug-stats span,.evolution-debug-stats strong{display:block}.evolution-debug-stats span{color:#968e9b;font-size:.58rem}.evolution-debug-stats strong{overflow:hidden;margin-top:7px;font-size:.69rem;text-overflow:ellipsis;white-space:nowrap}.evolution-debug-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);gap:12px;margin-top:12px}.evolution-debug-grid>article{padding:16px;border:1px solid rgb(29 25 48 / 9%);border-radius:15px;background:#f7f4f8}.debug-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.debug-section-heading strong{font-size:.72rem}.debug-section-heading span{color:#978f9c;font-size:.58rem}.evolution-debug-aggregate{display:grid;gap:6px;margin-top:13px}.debug-aggregate-row{display:grid;grid-template-columns:minmax(80px,1fr) repeat(3,minmax(54px,.55fr));align-items:center;gap:8px;padding:7px 8px;border-radius:8px;background:#ffffffad}.debug-aggregate-row>strong{font-size:.61rem}.debug-aggregate-row>span{display:flex;justify-content:space-between;gap:4px}.debug-aggregate-row small{color:#9b939f;font-size:.52rem}.debug-aggregate-row output{color:#5d5365;font-family:SFMono-Regular,Consolas,monospace;font-size:.58rem}.debug-last-decision{display:grid;gap:7px;margin-top:13px}.debug-last-decision>span{display:flex;justify-content:space-between;padding:8px 9px;border-radius:8px;background:#ffffffa6;font-size:.62rem}.debug-last-decision>span.is-winner{background:#e8e1ff;color:#5f42d5}.debug-last-decision p{margin:0;color:#928a97;font-size:.66rem}.evolution-debug-message,.evolution-debug-warning{font-size:.67rem;line-height:1.5}.evolution-catalog-panel{padding:28px}.evolution-count-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:22px}.evolution-count-strip article{padding:13px;border:1px solid rgb(29 25 48 / 8%);border-radius:12px;background:#f7f4f8}.evolution-count-strip article.is-final{border-color:#7559ff3d;background:linear-gradient(135deg,#eeeaff,#e9faf5)}.evolution-count-strip span,.evolution-count-strip strong,.evolution-count-strip small{display:block}.evolution-count-strip span{color:#8f8794;font-size:.6rem}.evolution-count-strip strong{margin-top:5px;color:#5f42d7;font-size:1.15rem}.evolution-count-strip small{margin-top:2px;color:#a098a5;font-size:.55rem}.evolution-catalog-workspace{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);gap:14px;margin-top:14px}.catalog-preview-card,.catalog-controls{min-width:0;padding:16px;border:1px solid rgb(29 25 48 / 9%);border-radius:16px;background:#f8f6f9}.catalog-sequence-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.catalog-sequence-toolbar div span,.catalog-sequence-toolbar div strong{display:block}.catalog-sequence-toolbar div span{color:#8c8290;font-family:SFMono-Regular,Consolas,monospace;font-size:.54rem;letter-spacing:.08em}.catalog-sequence-toolbar div strong{margin-top:4px;font-size:.76rem}.catalog-sequence-toolbar button{flex:none}.catalog-avatar-frame{position:relative;overflow:hidden;border-radius:18px}.evolution-catalog-avatar{min-height:390px;margin-top:0}.catalog-sequence-overlay{position:absolute;right:18px;bottom:17px;z-index:12;max-width:calc(100% - 36px);padding:10px 13px;border:1px solid rgb(255 255 255 / 42%);border-radius:11px;background:#0e0b22bd;box-shadow:0 10px 28px #0000003d;color:#fff;opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .18s ease,transform .28s ease;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.catalog-sequence-overlay[data-visible=true]{opacity:1;transform:translateY(0)}.catalog-sequence-overlay span,.catalog-sequence-overlay strong{display:block}.catalog-sequence-overlay span{color:#9ff7e6;font-family:SFMono-Regular,Consolas,monospace;font-size:.52rem;letter-spacing:.08em}.catalog-sequence-overlay strong{margin-top:4px;overflow:hidden;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.evolution-catalog-avatar.is-sequence-step .avatar-creature,.evolution-catalog-avatar.is-sequence-step[data-avatar-renderer=assets] .avatar-asset-stack{animation:catalog-form-reveal .74s cubic-bezier(.17,.82,.25,1) both}.evolution-catalog-avatar.is-sequence-step .avatar-aura,.evolution-catalog-avatar.is-sequence-step .evolution-object-layer{animation:catalog-aura-reveal .9s ease-out both}.evolution-catalog-avatar.is-sequence-step:after{inset:0;z-index:10;animation:catalog-scene-flash .85s ease-out both,final-stars 4.8s .85s ease-in-out infinite alternate}@keyframes catalog-form-reveal{0%{opacity:0;filter:brightness(4) blur(12px);scale:.48}46%{opacity:1;filter:brightness(2.2) blur(2px);scale:1.12}to{opacity:1;filter:brightness(1) blur(0);scale:1}}@keyframes catalog-aura-reveal{0%{opacity:0;scale:.4}55%{opacity:1;scale:1.18}to{scale:1}}@keyframes catalog-scene-flash{0%{opacity:1;background-color:#fff}18%{opacity:1}to{opacity:.9;background-color:transparent}}.evolution-catalog-avatar[data-stage=egg][data-avatar-renderer=fallback]>*{opacity:0!important}.evolution-catalog-avatar[data-stage=egg][data-avatar-renderer=fallback]:after{position:absolute;z-index:8;width:126px;height:158px;border:3px solid rgb(255 255 255 / 78%);border-radius:52% 48% 46% 54%/62% 62% 38% 38%;background:radial-gradient(circle at 37% 28%,rgb(255 255 255 / 90%) 0 12%,transparent 13%),linear-gradient(145deg,#e3ddff,#baf4e6 66%,#8c76ee);box-shadow:inset -18px -22px 28px #5841912e,0 22px 34px #412b6833;content:"";transform:rotate(-3deg)}.catalog-path{display:flex;align-items:stretch;gap:5px;margin-top:12px;overflow-x:auto}.catalog-path>div{min-width:84px;padding:9px;border-radius:9px;background:#ece8ef}.catalog-path>div.is-unlocked{background:linear-gradient(135deg,#e9e3ff,#e3f8f2)}.catalog-path small,.catalog-path strong{display:block}.catalog-path small{color:#938a99;font-size:.5rem}.catalog-path strong{margin-top:4px;font-size:.58rem;line-height:1.35}.catalog-path>div.is-locked strong{color:#aaa3ad}.catalog-path-arrow{align-self:center;color:#8a72ec;font-size:.68rem}.catalog-controls{display:grid;align-content:start;gap:16px}.catalog-controls>div>strong{display:block;margin-bottom:7px;font-size:.68rem}.catalog-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.catalog-stage-options{grid-template-columns:repeat(5,minmax(0,1fr))}.catalog-option-grid button{min-width:0;padding:9px 7px;overflow:hidden;border:1px solid rgb(29 25 48 / 10%);border-radius:9px;background:#fff;color:#756d7c;cursor:pointer;font-size:.58rem;line-height:1.35;text-overflow:ellipsis}.catalog-option-grid button[data-catalog-group=lineage]:before,.catalog-option-grid button[data-catalog-group=direction]:before{display:block;width:100%;height:4px;margin-bottom:7px;border-radius:999px;background:#8d78ff;box-shadow:0 0 8px #7559ff47;content:""}.catalog-option-grid button[data-catalog-value=weight]:before{background:linear-gradient(90deg,#ff6948,#ffcd5c);box-shadow:0 0 8px #ff694875}.catalog-option-grid button[data-catalog-value=motion]:before{background:linear-gradient(90deg,#7d47ff,#34f2e0);box-shadow:0 0 8px #7d47ff75}.catalog-option-grid button[data-catalog-value=light]:before{background:linear-gradient(90deg,#ffc445,#fffabf);box-shadow:0 0 8px #ffc4458c}.catalog-option-grid button[data-catalog-value=rhythm]:before{background:linear-gradient(90deg,#ff3a97,#b4ff44);box-shadow:0 0 8px #ff3a9775}.catalog-option-grid button[data-catalog-value=drive]:before{background:linear-gradient(90deg,#ff6948,#7d47ff);box-shadow:0 0 8px #ff694861}.catalog-option-grid button[data-catalog-value=shine]:before{background:linear-gradient(90deg,#ffc445,#34f2e0);box-shadow:0 0 8px #34f2e061}.catalog-option-grid button:hover{border-color:#7559ff57}.catalog-option-grid button.is-selected{border-color:#7559ff70;background:linear-gradient(135deg,#e9e3ff,#e3f8f2);color:#5e45cd;font-weight:750}.catalog-description{margin:0;padding:12px;border-radius:10px;background:#efecf2;color:#776f7e;font-size:.65rem;line-height:1.55}.evolution-debug-message{margin:16px 0 0;color:#756d7c}.evolution-debug-warning{margin:4px 0 0;color:#a58e8a}.calibration-heading-actions{display:flex;align-items:center;gap:8px}.calibration-heading-actions label{color:#8a8290;font-family:SFMono-Regular,Consolas,monospace;font-size:.63rem;text-transform:uppercase}.calibration-heading-actions select,.calibration-core select{padding:8px 30px 8px 10px;border:1px solid rgb(29 25 48 / 12%);border-radius:9px;background:#fff;color:#4f4658;font-size:.72rem}.calibration-intro{max-width:820px;margin:22px 0 0;color:#7d7584;font-size:.75rem;line-height:1.65}.calibration-live{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:22px}.calibration-live article{min-width:0;padding:13px;border:1px solid rgb(29 25 48 / 9%);border-radius:13px;background:#faf8fb}.calibration-live article>strong{display:block;margin-bottom:11px;font-size:.72rem}.comparison-row{display:grid;grid-template-columns:24px minmax(0,1fr) 29px;align-items:center;gap:5px;margin-top:6px;color:#918a97;font-family:SFMono-Regular,Consolas,monospace;font-size:.55rem}.comparison-row>div{height:4px;overflow:hidden;border-radius:999px;background:#e5e0e9}.comparison-row i{display:block;width:0;height:100%;border-radius:inherit;background:#a49daf}.calibrated-row i{background:linear-gradient(90deg,#7559ff,#58e6c1)}.comparison-row output{text-align:right}.calibration-settings{margin-top:18px;border:1px solid rgb(29 25 48 / 9%);border-radius:17px;background:#ffffff9e}.calibration-core{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:18px}.calibration-core label,.summary-controls label{display:flex;flex-direction:column;gap:8px;color:#77707d;font-size:.68rem}.calibration-core label>span,.summary-controls label>span{display:flex;justify-content:space-between;gap:10px}.calibration-core output,.summary-controls output{color:#5f42e7;font-family:SFMono-Regular,Consolas,monospace}.calibration-details{border-top:1px solid rgb(29 25 48 / 8%)}.calibration-details summary{padding:15px 18px;cursor:pointer;font-size:.76rem;font-weight:600}.calibration-details>p{margin:0;padding:0 18px 14px;color:#928a97;font-size:.67rem}.calibration-axis-controls{padding:0 18px 18px}.calibration-axis-controls article{display:grid;grid-template-columns:minmax(100px,1fr) repeat(3,minmax(90px,.65fr));gap:12px;align-items:end;padding:10px 0;border-top:1px solid rgb(29 25 48 / 6%)}.calibration-axis-controls article.is-adjusted{color:#5f42e7}.calibration-axis-controls strong{align-self:center;font-size:.72rem}.calibration-axis-controls label{color:#918a97;font-size:.61rem}.calibration-axis-controls label span{display:block;margin-bottom:5px}.calibration-axis-controls input{width:100%;padding:7px 8px;border:1px solid rgb(29 25 48 / 12%);border-radius:8px;background:#fff}.summary-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;padding:0 18px 18px}.calibration-runs{margin-top:18px;padding:18px;border:1px solid rgb(29 25 48 / 9%);border-radius:17px;background:#f6f3f7}.calibration-runs-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.calibration-runs-heading strong,.calibration-runs-heading span{display:block}.calibration-runs-heading strong{font-size:.78rem}.calibration-runs-heading span,.empty-runs{margin:4px 0 0;color:#918a97;font-size:.66rem}.calibration-run-list article{display:grid;grid-template-columns:minmax(180px,.75fr) minmax(0,2fr);gap:18px;align-items:center;margin-top:12px;padding-top:12px;border-top:1px solid rgb(29 25 48 / 8%)}.variation-hint{margin:14px 0 0;color:#918a97;font-size:.64rem}.run-variation{display:grid;grid-template-columns:minmax(150px,.75fr) repeat(5,minmax(0,1fr));gap:6px;align-items:center;margin-top:13px;padding:10px;border-radius:10px;background:#58e6c11c}.run-variation>strong{font-size:.66rem}.run-variation span{color:#13745c;font-family:SFMono-Regular,Consolas,monospace;font-size:.57rem}.run-variation b{display:block;margin-bottom:2px;color:#77707d;font-family:SF Pro Display,Helvetica Neue,Arial,sans-serif;font-size:.53rem}.calibration-run-list article>div:first-child strong,.calibration-run-list article>div:first-child span{display:block}.calibration-run-list article>div:first-child strong{font-size:.7rem}.calibration-run-list article>div:first-child span{margin-top:3px;color:#958e9b;font-family:SFMono-Regular,Consolas,monospace;font-size:.56rem}.run-values{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.run-values span{padding:7px;border-radius:7px;background:#fff;color:#5f42e7;font-family:SFMono-Regular,Consolas,monospace;font-size:.59rem}.run-values b{display:block;margin-bottom:3px;color:#77707d;font-family:SF Pro Display,Helvetica Neue,Arial,sans-serif;font-size:.55rem}.run-values small{color:#9b94a1;font-size:.52rem}.mode-switch{display:inline-flex;flex:none;padding:4px;border:1px solid rgb(29 25 48 / 10%);border-radius:12px;background:#eeeaef}.mode-button{min-width:78px;padding:8px 13px;border:0;border-radius:8px;background:transparent;color:#88808e;cursor:pointer;font-family:SFMono-Regular,Consolas,monospace;font-size:.69rem;text-transform:uppercase}.mode-button.is-active{background:#fff;color:#5f42e7;box-shadow:0 4px 12px #3c2a5f1a}.lab-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:26px;padding:13px 14px;border-radius:14px;background:#f4f1f5}.lab-toolbar p{margin:0;color:#716a78;font-size:.75rem}.preset-group{display:flex;align-items:center;gap:6px;flex:none}.preset-group span{margin-right:4px;color:#958e9b;font-family:SFMono-Regular,Consolas,monospace;font-size:.63rem;text-transform:uppercase}.preset-group button,.solo-button,.reset-button{border:1px solid rgb(29 25 48 / 11%);border-radius:8px;background:#fff;cursor:pointer;font-family:SFMono-Regular,Consolas,monospace;font-size:.68rem}.preset-group button{min-width:38px;padding:7px 9px}.preset-group .reset-button{margin-left:5px;color:#776f80}.preset-group button:hover,.solo-button:hover{border-color:#7559ff73}.dna-controls{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}.dna-control{position:relative;min-width:0;padding:16px;border:1px solid rgb(29 25 48 / 9%);border-radius:16px;background:#ffffffb8}.control-label{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.control-label strong,.control-label span{display:block}.control-label strong{font-size:.79rem}.control-label span{overflow:hidden;margin-top:3px;color:#958e9b;font-size:.65rem;text-overflow:ellipsis;white-space:nowrap}.control-label output{color:#5f42e7;font-family:SFMono-Regular,Consolas,monospace;font-size:.76rem}.dna-control input[type=range]{width:100%;margin:18px 0 12px;accent-color:#7559ff}.dna-control input[type=range]:disabled{opacity:.5}.solo-button{width:100%;padding:7px 10px;color:#7d7586}.solo-button.is-active{border-color:#7559ff;background:#7559ff;color:#fff}.tuning-panel{margin-top:16px;border-top:1px solid rgb(29 25 48 / 9%)}.tuning-panel summary{padding:18px 2px 0;color:#625a6b;cursor:pointer;font-size:.78rem;font-weight:600}.tuning-panel>p{margin:10px 2px 0;color:#8b8492;font-size:.7rem;line-height:1.6}.tuning-controls{display:grid;gap:8px;margin-top:14px}.tuning-row{display:grid;grid-template-columns:minmax(110px,.8fr) minmax(100px,.6fr) minmax(100px,.6fr) minmax(230px,1.8fr);align-items:center;gap:14px;padding:12px 14px;border:1px solid transparent;border-radius:12px;background:#f7f5f7}.tuning-row.is-adjusted{border-color:#7559ff47}.tuning-row>strong{font-size:.75rem}.tuning-row label{display:flex;align-items:center;gap:8px;min-width:0}.tuning-row label span{color:#8e8794;font-size:.65rem}.tuning-row input[type=number]{width:64px;padding:7px 8px;border:1px solid rgb(29 25 48 / 12%);border-radius:7px;background:#fff}.tuning-row input[type=range]{min-width:80px;flex:1;accent-color:#7559ff}.tuning-row output{width:45px;color:#5f42e7;font-family:SFMono-Regular,Consolas,monospace;font-size:.67rem;text-align:right}.unit-note{margin:4px 0 0;color:#88818f;font-size:.66rem;letter-spacing:.03em}.metrics-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:28px}.metric-card{padding:16px;border:1px solid rgb(29 25 48 / 9%);border-radius:16px;background:#ffffffb3}.metric-copy strong,.metric-copy span{display:block}.metric-copy strong{font-size:.82rem}.metric-copy span{margin-top:3px;color:#918a97;font-size:.68rem}.metric-copy output{font-family:SFMono-Regular,Consolas,monospace;font-size:.8rem}.raw-value{display:block;margin-top:8px;color:#a29ca7;font-family:SFMono-Regular,Consolas,monospace;font-size:.6rem}.meter{height:4px;overflow:hidden;margin-top:18px;border-radius:999px;background:#e7e2eb}.meter span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7559ff,#58e6c1);transition:width 70ms linear}.charts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}figure{margin:0;padding:15px;border:1px solid rgb(29 25 48 / 9%);border-radius:16px;background:#f8f6f9}figcaption{margin-bottom:10px;color:#8b8492;font-family:SFMono-Regular,Consolas,monospace;font-size:.67rem;text-transform:uppercase}canvas{display:block;width:100%;height:140px}footer{padding:24px 4px 0;color:#928b97;font-size:.62rem;letter-spacing:.05em}footer p{margin-bottom:0}@media(max-width:860px){.workspace,.charts-grid,.evolution-catalog-workspace{grid-template-columns:1fr}.dna-controls,.calibration-live,.song-dna-result,.style-dna-result,.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tuning-row{grid-template-columns:1fr 1fr 1fr}.tuning-row>strong{grid-column:1 / -1}.calibration-axis-controls article{grid-template-columns:repeat(3,minmax(0,1fr))}.calibration-axis-controls strong{grid-column:1 / -1}.calibration-run-list article{grid-template-columns:1fr}.run-variation{grid-template-columns:repeat(3,minmax(0,1fr))}.run-variation>strong{grid-column:1 / -1}}@media(max-width:580px){.app-shell{width:min(100% - 24px,1180px);padding-top:30px}.topbar{display:block}.privacy-badge{width:fit-content;margin-top:22px}.workspace{margin-top:28px}.source-grid,.dna-controls,.calibration-live,.calibration-core,.summary-controls,.song-dna-result,.style-dna-result,.metrics-grid,.segment-selection,.segment-selection-list{grid-template-columns:1fr}.evolution-count-strip,.catalog-stage-options,.catalog-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-toolbar,.calibration-heading-actions,.calibration-runs-heading,.analysis-session,.result-heading,.style-result-heading,.panel-heading{align-items:stretch;flex-direction:column}.mode-switch{align-self:flex-start}.preset-group{flex-wrap:wrap}.tuning-row{grid-template-columns:1fr 1fr}.run-variation{grid-template-columns:repeat(2,minmax(0,1fr))}.tuning-row label:last-child{grid-column:1 / -1}.input-panel,.avatar-panel,.song-analysis-panel,.calibration-panel,.lab-panel,.metrics-panel{padding:20px}}body[data-page=play] .lab-only,body[data-page=lab] .play-only{display:none!important}.app-shell{display:grid;width:min(1240px,calc(100% - 40px));grid-template-columns:minmax(320px,.72fr) minmax(0,1.45fr);align-items:start;gap:20px;padding-top:20px}.app-header{position:sticky;top:12px;z-index:20;display:grid;grid-column:1 / -1;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;min-height:76px;padding:10px 14px 10px 18px;border:1px solid rgb(29 25 48 / 9%);border-radius:22px;background:#faf9f7e0;box-shadow:0 14px 40px #382b4d14;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.brand{display:inline-flex;align-items:center;gap:11px;width:fit-content;color:inherit;text-decoration:none}.brand-mark{position:relative;width:35px;height:41px;border-radius:52% 48% 46% 54%/60% 60% 40% 40%;background:linear-gradient(145deg,#a798ff,#7559ff 58%,#5540bd);box-shadow:inset -5px -7px 10px #2a18642e;transform:rotate(-6deg)}.brand-mark:after{position:absolute;top:7px;left:8px;width:9px;height:7px;border-radius:50%;background:#ffffff7a;content:""}.brand strong,.brand small{display:block}.brand strong{font-size:1.05rem;letter-spacing:-.04em}.brand small{margin-top:2px;color:#8b8391;font-family:SFMono-Regular,Consolas,monospace;font-size:.54rem;letter-spacing:.08em}.page-nav{display:flex;gap:4px;padding:4px;border-radius:14px;background:#ede9ef}.page-nav-button{min-width:126px;padding:8px 13px;border:0;border-radius:10px;background:transparent;color:#89818e;cursor:pointer;text-align:left}.page-nav-button span,.page-nav-button small{display:block}.page-nav-button span{font-size:.74rem;font-weight:700}.page-nav-button small{margin-top:2px;font-size:.57rem}.page-nav-button.is-active{background:#fff;color:#5f42e7;box-shadow:0 5px 14px #412b651c}.app-header .privacy-badge{justify-self:end;margin-top:0}.page-intro{grid-column:2;grid-row:2;padding:52px 8px 20px}.page-intro h1{margin-bottom:16px;font-size:clamp(3.2rem,6vw,5.6rem)}.workspace{display:contents}.avatar-panel{position:sticky;top:108px;grid-column:1;grid-row:3 / span 3;align-self:start;margin-top:0}.input-panel,.song-analysis-panel,.evolution-panel,.calibration-panel,.lab-panel,.evolution-catalog-panel,.evolution-debug-panel,.metrics-panel{grid-column:2;margin-top:0}.input-panel,.calibration-panel{grid-row:3}.song-analysis-panel,.lab-panel{grid-row:4}.evolution-panel,.metrics-panel{grid-row:5}.evolution-debug-panel{grid-row:6}.evolution-catalog-panel{grid-row:7}.avatar-state-card{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:15px;padding:12px 13px;border-radius:13px;background:#f1eef4}.avatar-state-card div>span,.avatar-state-card div>strong{display:block}.avatar-state-card div>span{color:#9a929f;font-family:SFMono-Regular,Consolas,monospace;font-size:.56rem;text-transform:uppercase}.avatar-state-card div>strong{margin-top:3px;font-size:.7rem}.avatar-state-card>span{color:#7e7585;font-size:.64rem}.avatar-renderer-status{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:7px;padding:8px 10px;border:1px solid rgb(29 25 48 / 7%);border-radius:10px;background:#ffffff8f}.avatar-renderer-status span{color:#9a929f;font-family:SFMono-Regular,Consolas,monospace;font-size:.53rem;text-transform:uppercase}.avatar-renderer-status strong{overflow:hidden;color:#6f6479;font-family:SFMono-Regular,Consolas,monospace;font-size:.52rem;text-overflow:ellipsis;white-space:nowrap}footer{grid-column:1 / -1;grid-row:8}@media(max-width:980px){.app-shell{grid-template-columns:minmax(270px,.72fr) minmax(0,1.3fr)}.app-header{grid-template-columns:auto 1fr auto}.page-nav{justify-self:center}.page-nav-button{min-width:104px}.avatar-stage{min-height:320px}.evolution-catalog-workspace{grid-template-columns:1fr}.catalog-option-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:780px){.app-shell{display:flex;width:min(100% - 24px,720px);flex-direction:column;gap:16px;padding-top:12px}.app-header{position:sticky;top:8px;width:100%;grid-template-columns:auto 1fr}.app-header .privacy-badge{display:none}.page-nav{justify-self:end}.page-nav-button{min-width:82px;text-align:center}.page-nav-button small{display:none}.page-intro{width:100%;padding:30px 4px 6px}.page-intro h1{font-size:clamp(3rem,14vw,5rem)}.workspace{display:flex;width:100%;flex-direction:column;gap:16px}.avatar-panel{position:static;grid-row:auto;order:-1;width:100%}.input-panel,.song-analysis-panel,.evolution-panel,.calibration-panel,.lab-panel,.evolution-debug-panel,.metrics-panel,footer{width:100%}.song-analysis-panel,.evolution-panel,.calibration-panel,.lab-panel,.evolution-debug-panel,.metrics-panel{margin-top:0}}@media(max-width:520px){.app-header{padding:8px 9px 8px 11px;border-radius:17px}.brand-mark{width:29px;height:34px}.brand small{display:none}.page-nav-button{min-width:65px;padding:8px 10px}.evolution-comparison{grid-template-columns:1fr}.evolution-arrow{transform:rotate(90deg);justify-self:center}.candidate-score{grid-template-columns:minmax(110px,.9fr) 1fr 32px}.debug-input-row,.evolution-debug-grid{grid-template-columns:1fr}.debug-current-dna,.evolution-debug-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.danger-button{margin-left:0}}
