/* Product-wide readability, consistency and interaction polish */
:root{--app-radius:16px;--app-shadow:0 10px 30px rgba(24,35,70,.07);--app-shadow-hover:0 16px 38px rgba(24,35,70,.12)}
html{scroll-behavior:smooth}body{color:#17213b;-webkit-font-smoothing:antialiased}button,textarea,input{font:inherit}button{min-height:38px}button:focus-visible,textarea:focus-visible,input:focus-visible{outline:3px solid rgba(80,103,220,.25);outline-offset:2px}
.view{max-width:1440px;margin:0 auto;padding:32px clamp(18px,3vw,46px) 60px}.view.active{animation:viewIn .28s ease-out}@keyframes viewIn{from{opacity:.25;transform:translateY(7px)}to{opacity:1;transform:none}}
.page-title,.welcome{margin-bottom:24px}.page-title h1,.welcome h1{font-size:clamp(27px,3vw,40px);line-height:1.12;letter-spacing:-.035em}.page-title p,.welcome p{font-size:14px;line-height:1.55;max-width:720px}.eyebrow{font-size:10px!important;letter-spacing:.1em;font-weight:800}
.panel,.score-grid article,.path,.project,.studio-grid article{border-radius:var(--app-radius);box-shadow:var(--app-shadow);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.score-grid article:hover,.path:hover,.project:hover,.studio-grid article:hover{transform:translateY(-3px);box-shadow:var(--app-shadow-hover)}
.panel h2,.path h2,.project h2,.studio-grid h2{line-height:1.3}.panel p,.path p,.project p,.studio-grid p{font-size:12px!important;line-height:1.55}.panel small,.path small,.project small,.studio-grid small{font-size:10px!important;line-height:1.4}
.primary,.outline,.demo,.radar-action{padding:10px 16px!important;border-radius:10px!important;font-size:12px!important;font-weight:750!important;transition:transform .15s,box-shadow .15s}.primary:hover,.outline:hover,.demo:hover,.radar-action:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(53,65,130,.15)}
.nav{min-height:40px;font-size:11px!important;border-radius:9px}.nav span{font-size:14px}.side{scrollbar-width:thin}.future-label{margin-top:17px!important}
.skill-list{display:flex;flex-wrap:wrap;gap:9px}.skill{min-height:44px;padding:8px 12px!important;font-size:11px!important}.skill small{font-size:8px!important;margin-top:2px}
.dimension-bars>div{font-size:11px!important}.dimension-bars b{font-size:11px}.gap-list h2,.plan-card b,.identity b{font-size:12px!important}.gap-list p,.plan-card p,.identity label,.requirement-grid span{font-size:11px!important}.gap-proof{font-size:10px!important}.gap-tabs button{font-size:11px!important}
.advisor-head h1{font-size:18px!important}.advisor-head p,.advisor-welcome p,.ai-msg p{font-size:12px!important}.advisor-prompts button{font-size:11px!important;padding:12px!important}.advisor-input textarea{font-size:12px!important}.ai-note{font-size:9px!important}.user-msg{font-size:12px!important}
.table-scroll table{font-size:11px}.table-scroll th,.table-scroll td{padding:13px 11px}.toast{font-size:11px!important}.modal p{font-size:12px!important}.modal>b{font-size:10px!important}
.clinical-alert p{font-size:11px!important}.profession-banner p{font-size:11px!important}.profession-icons span{font-size:9px!important}
@media(max-width:700px){.view{padding:22px 14px 44px}.page-title,.welcome{gap:14px}.page-title h1,.welcome h1{font-size:27px}.page-title p,.welcome p{font-size:13px}.panel{border-radius:14px}.score-grid,.path-grid,.experience-grid,.studio-grid,.signal-grid{grid-template-columns:1fr!important}.topbar,body>div>header{padding-inline:14px}.career-orbit{transform:scale(.9);transform-origin:center}.gap-summary{padding:16px}.dimension-bars>div{grid-template-columns:minmax(105px,1fr) minmax(70px,1fr) 38px!important}.advisor-shell{min-height:calc(100vh - 100px)}}
@media(max-width:420px){.view{padding-inline:11px}.page-title h1,.welcome h1{font-size:24px}.panel,.path,.project,.studio-grid article{border-radius:12px}.radar-filters{overflow-x:auto;flex-wrap:nowrap!important;padding-bottom:5px}.radar-filters button{white-space:nowrap}.career-orbit{transform:scale(.8);margin-inline:-20px}.plan-card{padding:11px}.modal{padding:22px 18px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
